Python中字符串的基本操作
2021/11/29 20:37:43
本文主要是介绍Python中字符串的基本操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、字符串
字符串可以理解为一段普通的文本内容,在python里,使用引号来表示一个字符串,不同的引号表示的效果会有区别。
str = 'Hello World' # 一对单引号 str = "Hello World" # 一对双引号 str = 'Tom said:"I am Tom!"' # 一对单引号 str = 'Tom said:"I\'m Tom!"' # 转义字符 str = """Tom said:"I'm Tom!""" # 三个双引号 str = '''Tom said:"I'm Tom!''' # 三个单引号
- 双引号或者单引号中的数据,就是字符串
- 如果使用一对引号来定义字符串,当出现符号冲突时可以使用转义字符
- 使用三个单引号、双引号定义的字符串可以包裹任意文本
二、转义字符
转义字符 | 含义 |
---|---|
\r | 将当前位置移到本行开头 |
\n | 换行 |
\t | 用来表示一个制表符 |
\\ | 代表一个反斜线字符\ |
\’ | 用来显示一个单引号 |
\’’ | 用来显示一个双引号 |
三、字符串索引
在计算机中,每个字符串储存在相应的位置里,要取出相应的字符,需利用下标的方法(下标从0开始)
a = 'abcdefg' print(a[0]) print(a[1]) print(a[2])
结果:
注:字符串的索引下标范围为0到(len-1)或者为(-len)到-1
四、字符串遍历
所谓遍历,可以理解为按照一定的规则(一般情况下就是数据的下标),访问每一个数据。不是所有的数据都能够被遍历,字符串是可迭代对象,能够进行遍历。
可以使用while和for语句,对字符串里的元素进行遍历。
- while循环遍历
a = 'abcdefg' i = 0 while i < len(a): print(a[i]) i += 1
- for循环遍历
a = 'abcdefg' for i in a: print(i)
五、字符串切片
切片:字符串,列表 格式:字符串变量[start:end:step]---> start~end-1,默认start为0,左闭右开;最后step参数为步长,默认为1,取负数代表反方向取 例: a = 'hello world' print(a[0:5]) ---> hello print(a[-5:-1]) ---> worl print(a[-5:]) ---> world print(a[1:-1]) ---> ello worl print(a[::2]) ---> hlowrd print(a[::-1]) ---> dlrow olleh print(a[::-2]) ---> drwolh
六、字符串的常见操作
- 获取长度:len
- 查找内容:find,index,rfind,rindex
- 判断:startwith,endswith,isalpha,isalnum,isspace
- 计算出现次数:count
- 替换内容:replace
- 切割字符串:split,rsplit,splitlines,partition,rpartition
- 修改大小写:capitalize,title,upper,lower
- 空格处理:ljust,rjust,center,lstrip,rstrip,strip
- 字符串拼接:join
获取长度
len函数可以获取字符串的长度
a = 'hello world' print(len(a)) # ----> 11
查找内容
-
find
查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值,如果不存在,则返回-1.
语法格式:
S.find(sub[, start[, end]]) -> int
示例:
a = '趁势而上全面开启社会主义现代化建设新征程,中华人民共和国万岁!社会主义万岁!' print(a.find('社会主义')) # --->8 '社会主义'第一次出现时,'社'所在位置 print(a.find('社恐')) # ---> -1 '社恐'没有在字符串中出现,返回-1 print(a.find('社会', 12)) # ---> 31 从下标12开始查找'社会',找到'社'的位置是 print(a.find('社会', 1, 6)) # ---> -1 从下标1到6开始查找'社会',没找到返回-1
- rfind
和find函数相似,不过是从右边开始查找。
- index
和find函数相似,不过find方法未找到时,返回-1,而index未找到时会报错。
- rindex
和index()一样的,只不过是从右边开始查找。
判断
- startswith
判断字符串是否以指定内容开始。结果返回布尔值。语法格式:
S.startswith(prefix[, start[, end]]) -> bool
- endswith
和startswith函数相似,判断字符串是否以指定内容结束。同样返回布尔值。
- isalpha
判断字符串是否是纯字母,同样返回一个布尔值。
- isdigit
判断字符串是否是纯数字,只要出现非0-9的数字,结果就是False。
- isalnum
判断字符串是否由数字和字母组成,只要出现了非数字和非字母,结果就是False。
- isspace
判断字符串是否只包含空格,如果是则返回True。
计算出现次数
count
计算一个字符串中某个字符或者字符串出现的次数,语法格式:
S.count(sub[, start[, end]]) -> int
示例:
mystr = '趁势而上全面开启社会主义现代化建设新征程,中华人民共和国万岁!社会主义万岁!' print(mystr.count('万岁')) # 2. '万岁'字出现两次
替换内容
replace
替换字符串中指定的内容,如果指定次数count,则替换不会超过count次
示例:
str = '你说rap我说No!' new_str1 = str.replace('No', 'Yes') new_str2 = str.replace('说', '唱') new_str3 = str.replace('说', '唱', 1) print(new_str1,new_str2,new_str3)
结果:
切割字符串(切片)
- split
以指定字符串为分隔符切片,如果 maxsplit有指定值,则仅分隔 maxsplit+1 个子字符串。返回的结果是一个列表。
示例:
a = '趁势而上全面开启社会主义现代化建设新征程,中华人民共和国万岁,社会主义万岁!' result = a.split() # 没有空白字符,所以字符串未被分割 result1 = a.split('社会') # 以'社会'为分隔符 result2 = a.split('社会', 1) # 以'社会'为分割符,最多分为2份 print(result) print(result1) print(result2)
结果:
2. rsplit
用法和split一样,只不过是从右往左进行分割
- splitlines
按照行分割,返回一个包含各行作为元素的列表
示例:
mystr = 'hello \nworld' print(mystr.splitlines())
结果:
4. partition
把字符串以所选内容分割问三部分。示例:
a = '趁势而上全面开启社会主义现代化建设新征程,中华人民共和国万岁,社会主义万岁!' print(a.partition('社会'))
结果:
5. rpartition
和partition一样,只不过是从右边开始
修改大小写
修改大小写的功能只对英文有效,主要包括:首字母大写capitalize,每个单词的首字母大写title,全小写lower,全大写upper。
空格处理
- ljust
返回指定长度的字符串,并在右侧使用空白字符补全,即左对齐。
- rjust:右对齐。
- center:居中。
- lstrip:删除字符串左边的空白字符。
- rstrip:删除字符串右边的空白字符
- strip:删除两端的空白字符。
示例:
a = 'hello world' str = a.ljust(15) print(str) print(len(str)) str1 = a.rjust(15) print(str1) str2 = a.center(15) print(str2)
结果:
字符串拼接
把参数进行遍历,取出参数里的每一项,然后再在后面加上要拼接的字符串,最后一个参数后面不添加。
示例:
str = 'a' print(str.join('123')) print(str.join(['keep','good','data']))
结果:
作用:可以把列表或者元组快速地转为字符串,并且以指定的字符分割
示例:
txt = '_' print(txt.join(['a', 'b', 'c'])) print(txt.join(('a', 'b', 'c')))
结果:
七、补充说明
- 字符串和字符串之间能够使用加法运算符,作用是将两个字符串拼接成为一个字符串。例如:
'hello' + 'world'
的结果是'helloworld'
- 字符串和数字之间可以做乘法运算,结果是将指定的字符串重复多次。例如:
'hello'*2
的结果是hellohello
- 字符串和字符串之间,如果使用比较运算符进行计算,会获取字符对应的编码,然后进行比较。
- 除上述几种运算符以外,字符串默认不支持其他运算符。
这篇关于Python中字符串的基本操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型