目录
6.字符串替换
1.查询
index():查找子串substr第一次出现的位置,如果查找的子串不存在时,则抛出ValueError
rindex():查找子串substr最后一次出现的位置,如尽查找的子串不存在时,则抛出ValueError
find():查找子串substr第一次出现的位置,如果查找的子串不存在时,则返回-1
rfind():查找子串substr最后一次出现的位置,如果查找的子串不存在时,则返回-1
str = "python,python"
substr = 'python'
print(str.index(substr),end=" ")
print(str.rindex(substr),end=" ")
print(str.find(substr),end=" ")
print(str.rfind(substr),end=" ")
2.大小写转换
upper():把字符串中所有字符都转成大写字母
lower():把字符串中所有字符都转成小写字母
swapcase():把字符串中所有大写字母转成小写字母,把所有小写字母都转成大写字母
capitalize():把第一个字符转换为大写,把其余字符转换为小写
title():把每个单词的第一个字符转换为大写,把每个单词的剩余字符转换为小写
str = "python PYTHON"
str2 = str.capitalize()
print(str2)
str3 = str.swapcase()
print(str3)
print(str.upper())
print(str.lower())
print(str.title())
3.字符串对齐
center():居中对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格,如果设置宽度小于实际宽度则则返回原字符串
ljust():左对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格如果设置宽度小于实际宽度则则返回原字符串
rjust():右对齐,第1个参数指定宽度,第2个参数指定填充符,第2个参数是可选的,默认是空格如果设置宽度小于实际宽度则则返回原字符串
zfill():右对齐,左边用0填充,该方法只接收一个参数,用于指定字符串的宽度,如果指定的宽度小于等于字符串的长度,返回字符串本身
str = "python"
print(str.center(10,"-"))
print(str.center(6,"-"))
print(str.center(5,"-"))
特殊的:(zfill左边添0,如果是负数数字,0填在负号后)
print('-1230'.zfill(5))
print('-1230'.zfill(8))
print('abc'.zfill(8))
4.字符串劈分
split():
1.从字符串的左边开始劈分,默认的劈分字符是空格字符串,返回的值都是一个列表。
2.通过参数sep指定劈分字符串时的劈分符。
3.通过参数maxsplit指定劈分字符串时的最大劈分次数,在经过最大次劈分之后,剩余的子串会单独做为一部分。
rsplit()
1.从字符串的右边开始劈分,默认的劈分字符是空格字符串,返回的值都是一个列表。
2.通过参数sep指定劈分字符串时的劈分符。
3.通过参数maxsplit指定劈分字符串时的最大劈分次数,在经过最大次劈分之后,剩余的子串会单独做为一部分。
str = "hello python 2022 "
list = str.split()
print(list)
list2 = str.split("h",1)
print(list2)
list3 = str.rsplit("h",1)
print(list3)
5.判断字符串
isidentifier():判断指定的字符串是不是合法的标识符
isspace():判断指定的字符串是否全部由空白字符组成(回车、换行,水平制表符)
isalpha():判断指定的字符串是否全部由字母组成
isdecimal():判断指定字符串是否全部由十进制的数字组成
isnumeric():判断指定的字符串是否全部由数字组成
isalnum():判断指定字符串是否全部由字母和数字组成
str = "hello python"
print(str.isalnum())
6.字符串替换
replace():第1个参数指定被替换的子串,第2个参数指定替换子串的字符串,该方法返回替换后得到的字符串,替换前的字符串不发生变化,调用该方法时可以通过第3个参数指定最大替换次数。
str = "--hello python--"
str2 = str.replace("-","=")
str3 = str.replace("-","=",2)
print(str2)
print(str3)
7.字符串的合并
join():将列表或元组中的字符串合并成一个字符串。
list = ['123',"hello","python"]
print(list)
print('!'.join(list))
print(''.join(list))
t = ('123',"hello","python")
print('*'.join(t))
print(type('*'.join(t)))
print('*'.join('python'))
8.字符串比较
运算符:> < <= >= == !=
'''
== 比较的是值是否相等
is 比较的是id是否相等
'''
a = 'python'
b = 'python'
print(id(a))
print(id(b))
print(a==b,a is b)
9.字符串切片操作
str = "HelloPython"
str1 = 'hi'
str2 = 'py'
print(str[:3])
print(str[6:])
print(str[1:6:2])
print(str[:-1])
print(str[::-1])
print(str1+str2)
10.格式化字符串输出
name = "zhangsan"
age = 22
print('my name is %s, %d years old'%(name,age))
print('my name is {0}, {1} years old,and his name is also {0}'.format(name,age))
print(f'my name is {name}, {age} years old')
print('%10d'%16)
print('%.3f'%3.14159)
print('%10.3f'%3.14159) # 宽度为10,精度为3(即小数点后3位)
print('{:10.3f}'.format(3.14159))
print('{:.3f}'.format(3.14159))