Python 字符串的常用方法

news2025/1/16 14:01:41

视频版教程 Python3零基础7天入门实战视频教程

下标索引操作和前面的列表,元组用法一样。

虽然字符串不能被修改,但是返回一个操作过的新字符串,所以方法还不少。

在这里插入图片描述

我先学习下常用方法;

1,index(元素)方法,查找字符串中指定元素的下标,不存在就报错

# index(元素)方法,查找字符串中指定元素的下标,不存在就报错
str2 = "python222 是个学习python的好地方"
print(str2.index('222'))

2,replace(old字符串1,new字符串2),把字符串内的所有字符串1,替换成字符串2,然后方法返回一个新字符串。(不是修改字符串操作)

如果不想全部替换,只替换前几个 用 replace(old字符串1,new字符串2,count)方法。

# replace(old字符串1,new字符串2),把字符串内的所有字符串1,替换成字符串2,然后方法返回一个新字符串。(不是修改字符串操作)
# 如果不想全部替换,只替换前几个 用 replace(old字符串1,new字符串2,count)方法。
str3 = "python222 是个学习python的好地方,我要成为python老司机"
str3_2 = str3.replace("python", "java")
print(str3)
print(str3_2)
str3_3 = str3.replace("python", "java", 2)
print(str3_3)

输出结果:

3,split(分隔符字符串),根据指定的分隔符字符串,将字符串分割成多个字符串,并存入列表对象中,方法返回列表对象。(不是修改字符串操作)

# split(分隔符字符串),根据指定的分隔符字符串,将字符串分割成多个字符串,并存入列表对象中,方法返回列表对象。(不是修改字符串操作)
str4 = "java php python"
str5 = "java,php,python"
l1 = str4.split(" ")
l2 = str5.split(",")
print(f"l1={l1},type={type(l1)}")
print(f"l2={l2},type={type(l2)}")

输出结果:

l1=['java', 'php', 'python'],type=<class 'list'>
l2=['java', 'php', 'python'],type=<class 'list'>

4,strip(),去掉前后空格,返回新的字符串

strip(字符串),还可以去掉前后指定的字符串,返回新的字符串

str6 = "  java php python  "
print(str6.strip())
str7 = "@%java php python%@"
print(str7.strip("@%"))
print(str6)
print(str7)

输出结果:

java php python
java php python
  java php python  
@%java php python%@

5,count(字符串),统计字符串中出现指定字符串的个数

str8 = "java php python"
print(str8.count("th"))

6,len(字符串),统计字符串的长度

str9 = "java php python"
print(len(str9))

作业:定义字符串 str=" java php python "

1,统计p的个数;

2,去掉前后空格,得到新字符串str2

3,遍历str2,打印输出所有字符

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1016326.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第三篇------Virtual I/O Device (VIRTIO) Version 1.1

上一篇文章链接https://blog.csdn.net/Phoenix_zxk/article/details/132921821 接下来续上 5.9.4 支持的加密服务 以下加密服务已定义&#xff1a; /* CIPHER 服务&#xff1a;用于加密解密操作 */ #define VIRTIO_CRYPTO_SERVICE_CIPHER 0 /* HASH 服务&#xff1a;用于哈…

【微信小程序】网络请求

环境&#xff1a;微信小程序开发工具 测试api&#xff08;随机获取猫咪靓照&#xff09;:https://api.thecatapi.com/v1/images/search?limit2 示例&#xff1a; 完整代码 request.wxml <button bind:tap"requestBtn" type"primary">网络请求&l…

基于SSM+Vue的校园活动管理平台设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

【python之经验模态分解EMD实现】PyEMD库的安装和导入EMD, Visualisation问题解决方法[完整可运行]

现有的导入问题 目前网上的办法&#xff0c;直接导入&#xff1a;from PyEMD import EMD, Visualisation 是有问题的 可能会出现 在 ‘init.py | init.py’ 中找不到引用 ‘Visualisation’ 的报错。 原因似乎是现在导入的命令改了&#xff0c;这是一个坑&#xff0c;解决的…

数组相关面试题

1、原地移除数组中所有的元素val&#xff0c;要求时间复杂度为O(N),空间复杂度为O(1)。 OJ链接&#xff1a;27. 移除元素 - 力扣&#xff08;LeetCode&#xff09; 分析&#xff1a; 法1&#xff1a;挪到数据&#xff0c;思路如顺序表的头删&#xff0c;将后面的数据向前挪动将…

What does rail-to-rail mean (Rail-to-Rail Op amp) ?

What does rail-to-rail mean (Rail-to-Rail Op amp) ?

网络安全进阶学习第十九课——CTF之密码学

文章目录 一、密码学简介二、密码设计的根本目标三、古典密码1、摩斯密码CTF-题目展示 2、换位密码1&#xff09;栅栏密码2&#xff09;凯撒密码3&#xff09;曲路密码4&#xff09;列移位密码 3、替换密码1&#xff09;移位密码2&#xff09;简单替换密码3&#xff09;埃特巴什…

10 Ubuntu下配置STMCubeMX与CLion IDE联合环境搭建(不包含下载CLion的教程)

序言 果然作为一名测控系的学生&#xff0c;纯搞视觉多少还是有点与专业脱节&#xff0c;决定入坑嵌入式。选择STM32进行入门&#xff0c;并且使用CubeMX加CLion作为我的第一个真正意义上的嵌入式开发环境&#xff08;大一的时候玩过一段时间&#xff0c;但是没什么技术&#…

java创建excel文件和解析excel文件

创建excel文件 package com.bjpowernode.crm.poi;import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.HorizontalAlignment;import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.…

用于3D模具和模型制作:数控机床进行加工软件DeskProto【常用CAM(计算机辅助制造)软件】

DeskProto是一款用于计算机数控&#xff08;CNC&#xff09;机床的三维模型加工的软件&#xff0c;它的技术原理和操作方法涵盖了以下方面&#xff1a; 技术原理&#xff1a; DeskProto的技术原理基于计算机辅助设计&#xff08;CAD&#xff09;和计算机数控&#xff08;CNC&…

Day43:VUEX

1. 基本介绍 这里介绍的VueX是匹配Vue3的V4版本&#xff0c;它绝大多数功能使用都和之前基本保持一致。 1.1 官方定义 先一起看一下官网对于VueX的定义&#xff1a; Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 库。它采用集中式存储管理应用的所有组件的状态&…

Mybatis入门与数据库连接池以及lombok插件

我们做为后端程序开发人员&#xff0c;通常会使用Java程序来完成对数据库的操作。Java程序操作数据库&#xff0c;现在主流的方式是&#xff1a;Mybatis。 什么是MyBatis? MyBatis是一款优秀的 持久层 框架&#xff0c;用于简化JDBC的开发。 MyBatis本是 Apache的一个开源项…

typescrip接口 interface详解,以及ts实现多态

ts 接口 当一个对象类型被多次使用时,一般会使用接口(interface)来描述对象的类型,达到复用的目的 示例如下 当一个对象类型被多次使用时,可以看到,很明显代码有大量的冗余 let personTom: { name: string, age?: number, sayHi(name: string): void } {name: Tom,sayHi(n…

从头开始制作扩散模型(实现快速扩散模型的简单方法)

一、说明 本文是关于自己从头开始构建扩散模型的教程。我总是喜欢让事情变得简单易行&#xff0c;所以在这里&#xff0c;我们避免了复杂的数学。这不是一个正常的扩散模型。相反&#xff0c;我称之为快速扩散模型。将仅使用卷积神经网络&#xff08;CNN&#xff09;来制作扩散…

LwIP介绍

文章目录 一、LwIP简介二、LwIP主要特性:三、文件说明lwip-2.1.3contrib-2.1.0一、LwIP简介 lwIP(Light weight IP)是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。LwIP是Light Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP 的设…

【Obsidian】中编辑模式和阅读模式光标乱跳问题以及编辑模式中段落聚集的问题解决

前言 最近用Obsidian 软件写md笔记&#xff0c;但是当我分别使用编辑模式和阅读模式时出现了光标乱跳的问题。比如我在编辑模式&#xff0c;光标停留在第500行&#xff0c;但是切换成编辑模式就变成了1000行。而且光标根本没停在原来的位置。这样重新定位非常麻烦。 两种阅读…

mybati缓存了解

title: “mybati缓存了解” createTime: 2021-12-08T12:19:5708:00 updateTime: 2021-12-08T12:19:5708:00 draft: false author: “ggball” tags: [“mybatis”] categories: [“java”] description: “mybati缓存了解” mybatis的缓存 首先来看下mybatis对缓存的规范&…

Web服务(Web Service)

简介 Web服务&#xff08;Web Service&#xff09;是一种Web应用开发技术&#xff0c;用XML描述、发布、发现Web服务。它可以跨平台、进行分布式部署。 Web服务包含了一套标准&#xff0c;例如SOAP、WSDL、UDDI&#xff0c;定义了应用程序如何在Web上实现互操作。 Web服务的服…

第十九章、【Linux】开机流程、模块管理与Loader

19.1.1 开机流程一览 以个人计算机架设的 Linux 主机为例&#xff0c;当你按下电源按键后计算机硬件会主动的读取 BIOS 或 UEFI BIOS 来载入硬件信息及进行硬件系统的自我测试&#xff0c; 之后系统会主动的去读取第一个可开机的设备 &#xff08;由 BIOS 设置的&#xff09; …

线程安全问题的原因及解决方案

要想知道线程安全问题的原因及解决方案&#xff0c;首先得知道什么是线程安全&#xff0c;想给出一个线程安全的确切定义是复杂的&#xff0c;但我们可以这样认为&#xff1a;如果多线程环境下代码运行的结果是符合我们预期的&#xff0c;即在单线程环境应该的结果&#xff0c;…