字符串的相关方法和函数
1.字符串的相关运算符
1)数学运算符
+、*
#字符串1+字符串2 - 将两个字符串合并成一个字符串 #字符串*n - 字符串重复n次产生一个新的字符串
2)比较运算符
==、!=
<、>、<=、>=
比较第一个不相等字符的编码值的大小 应用:比较字符大小来判断字符的类型,例如: 判断是否是数字字符:‘0’<=x<=‘9’ 判断是否是中文:‘\u4e00’<=x<=’\u9fa5’
2.相关函数
1)max、min
2)sorted(字符串) --排序
3)len(字符串) - 统计字符串中字符的个数
4)str(数据) - 将数据转换成字符串
所有的数据都可以转换成字符串 转换的时候直接在数据的打印值外面加’‘
5)eval
eval(字符串)- 将字符串中的内容转换成有效代码
3.字符串的相关方法
1)center、rjust、ljust、zfill
字符串.center(宽度,填充字符) - xabcx 字符串.rjust(宽度,填充字符) - xxabc 字符串.ljust(宽度,填充字符) -abcxx 字符串.zfill(宽度) - 00abc 说明:如果给的长度小于原字符串的长度结果就是原字符串
str1='abc'
result1=str1.center(7,'*')
print(result1)
result2=str1.rjust(7,'*')
print(result2)
result3=str1.ljust(7,'*')
print(result3)
result4 = str1.zfill(7)
print(result4)
result5 = str1.center(3,'*')
print(result5)
2).count
字符串1.count(字符串2)- 统计字符串1中字符串2的个数 字符串1.count(字符串2,开始下标,结束下标) - 统计字符串1中指定范围内字符串2出现的次数
str1='how are you? Im fine, Thank you! and you?'
result1=str1.count('you')
print(result1)
result2=str1.count('you',-7)
print(result2)
result3=str1.count('you',13)
print(result3)
3).endswith
字符串1.endswith(字符串2) - 判断字符串1是否以字符串2结尾
4).find、rfind、index、rindex
字符串1.find(字符串2) - 获取字符串1中第一个字符串2出现的位置,如果字符串2不存在返回‘-1’ 字符串1.index(字符串2) - 获取字符串1中第一个字符串2出现的位置,如果字符串2不存在报错 字符串1.rfind(字符串2) - 获取字符1中最后一个字符串2出现的位置,如果字符串不存在返回‘-1’ 字符串1.rindex(字符串2) - 获取字符串1中最后一个字符串2出现的位置,如果字符串2不存在报错
5):
字符串.isalnum() - 判断字符串中所有的字符是否全是数字、字母或者中文 字符串.isalpha() - 判断字符串中所有的字符是否是字母或者中文 字符串.isdigit() - 判断字符串中所有的字符是否全是数字字符(只把0~9看成数字) 字符串.islower() - 判断字符串中所有的字符是否全是小写字母 字符串.isupper() - 判断字符串中所有的字符是否全是大写字母 字符.islower() -判断字符是否是小写字母 字符.isupper() -判断字符是否是大写字母 字符.isnumeric() - 判断字符串中所有的字符是否全是数字字符(将所有独立存在表示数值的字符都看成数字:比如:中文数字、阿拉伯数字) 字符.isspace()- 判断一个字符中所有的字符都是空白字符
6).join
字符串.join(序列) - 将序列中的元素通过指定的字符串连成一个新的字符串 注意:序列中的元素必须全是字符串
list1=['abc','mn','xy']
result=''.join(list1)
print(result)
result1='+'.join(list1)
print(result1)
nums=[10,23,89,902]
result2=''.join([str(x)[0] for x in nums])
print(result2)
7) lower、upper
字符串.lower()-将字符串中的所有大写变成小写字母 字符串.upper() - 将字符串中所有的小写字母变成大写
8)strip、lstrip、rstrip
字符串.strip()- 将字符串前后的空白删除 字符串.lstrip() -将字符串前面的空白删除 字符串.rstrip() - 将字符串后面的空白删除
9)maketrans、translate - 组合使用
用maketrans建立对应关系, translate再用对应关系替换字符串中的字符 str.maketrans(字符串1,字符串2) - 让字符串1中的字符与字符串2的字符创建一个对应关系 注意:字符串1长度必须和字符串的长度必须一致 字符串.translate(字符对应关系)- 将字符串中的字符按照字符对应关系表对字符进行替换
table=str.maketrans('abc','123')
result='abc88shabczxc'.translate(table)
print(result)
10)replace
字符串1.replace(字符串2,字符串3) - 将字符串1中所有的字符串2替换成字符串3 字符串1.replace(字符串2,字符串3,n)
11)split -切割
字符串1.split(字符串2)- 将字符串1中所有的字符串2作为切割点对字符串1进行切割;返回一个列表; 字符串1.split(字符串2,n)
str1='123abcxyzabcmn'
print(str1.split('abc'))
3.字符串格式化
字符格式化背景:一个字符串的内容中可能会存在部分数据是变化的
1)字符串拼接
2)格式字符串
包含格式占位符的字符串%(数据1,数据2,数据3,…) 格式占位符: %s - c和java中字符串站位符;python中给任何类型的数据站位; %d - 整数站位符,可以给任何数字占位;会将浮点数转化成整数再占位; %f - 浮点数占位符;会将整数转化成小数点后六位数的浮点数再占位 %.Nf -浮点数占位符;同上,但保留N位小数; %c - 字符占位符;可以填充字符和字符编码值;
3)f-string
a.基本用法:
在字符串前面加f,然后再字符串中通过{}来确定变化的部分 注意:{}中的内容可以是任何有结果的表达式,表达式的结果就是字符串填充内容
b.加参数:
{表达式:参数} 参数1 - :.Nf 控制保留N位小数 参数2 - :, 标准金额显示,每三位数加, 参数3 - :0>n 在数字前面填充0,让数字变成n位数 :0<n 在数字后面填充0,让数字变成n位数 如果填充字符为空,用空格填充
|