python 字符串操作
判断是否为字符串
python使用isinstance(s,basestring)判断一个对象是否为字符串
字符串去掉双引号
1 a = "'string'" 2 print(a, type(a)) 3 b = eval(a) 4 print(b, type(b)) 5 6 结果: 7 'string' <class 'str'> 8 string <class 'str'>
基本操作
性质判定
1 s = 'string' 2 s.isalnum() # 所有字符都是数字或者字母,为真返回Ture,否则返回False 3 s.isalpha() # 所有字符都是字母,为真返回True... 4 s.isdigit() # 所有字符都是数字,为真返回True... 5 s.islower() # 所有字符都是小写,为真返回True... 6 s.isupper() # 所有字符都是大写,为真返回True... 7 s.istitle() # 所有字符首字母是大写,为真返回True... 8 s.isspace() # 所有字符都是空白字符,为真返回True...
查找与替换
1 replace(old,new[,count]):用来替换字符串的某些子串,用new替换old。如果指定count参数话,就最多替换count次,如果不指定,就全部替换
1 s = 'string' 2 b = '123' 3 c = b.replace('1', s) 4 print(b) 5 print(c) 6 7 结果: 8 123 9 string23
分割
1 partition(sep):用来根据指定的分隔符将字符串进行分割,如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。如果sep没有出现在字符串中,则返回值为(sep,",")。 2 s = 'string' 3 b = s.partition('t') 4 print(b) 5 6 结果: 7 ('s', 't', 'ring')
1 split(sep[,maxsplit]]):通过指定分隔符对字符串进行切片,如果参数maxsplit 有指定值,则仅分隔 maxsplit 个子字符串,返回分割后的字符串列表。 2 s = 'string' 3 b = s.split('t') 4 print(b) 5 6 结果: 7 ['s', 'ring']
拼接
1 # '+'号拼接 2 a = '123' 3 b = '456' 4 print(a+b) 5 # 占位符拼接 6 print('my name is %s' % '张三') 7 # .format()拼接 8 print('my name is {name}'.format(name='李四')) 9 # .join()拼接,将字符串,元组,列表中的元素以指定的字符连接成一个新的字符串 10 c = ('123','456') 11 print('+'.join(c)) 12 13 结果: 14 123456 15 my name is 张三 16 my name is 李四 17 123+456
变形
1 lower():转换字符串中所有大写字符为小写。 2 upper():将字符串中的小写字母转为大写字母。 3 capitalize():将字符串的第一个字母变成大写,其他字母变小写。对于 8 位字节编码需要根据本地环境。 4 swapcase():用于对字符串的大小写字母进行转换,大写转小写,小写转大写。 5 title():返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。
删减与填充
1 strip([chars]):用于移除字符串头尾指定的字符(默认为空格),如果有多个就会删除多个。 2 ltrip([chars]):用于截掉字符串左边的空格或指定字符。 3 rtrip([chars]):用于截掉字符串右边的空格或指定字符。 4 center(width[,fillchar]):返回一个原字符串居中,并使用fillchar填充至长度 width 的新字符串。默认填充字符为空格 5 ljust(width[,fillchar]):返回一个原字符串左对齐,并使用fillchar填充至指定长度的新字符串,默认为空格。如果指定的长度小于原字符串的长度则返回原字符串。 6 rjust(width[,fillchar]):返回一个原字符串右对齐,并使用fillchar填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。 7 zfill(width):返回指定长度的字符串,原字符串右对齐,前面填充0 8 expandtabs([tabsize]):把字符串中的 tab 符号('\t')转为适当数量的空格,默认情况下是转换为8个。
字符串切片
同列表切片
字符串格式化
用法:它通过 {} 和 : 代替传统的 % 方法
1.使用关键字参数
1 d = {'name': '张三', 'age': '18'} 2 a = 'my name is {name},age is {age}'.format(name='zhangsan', age=19) 3 print(a) 4 b = 'my name is {name},age is {age}'.format(**d) 5 print(b) 6 7 结果: 8 my name is zhangsan,age is 19 9 my name is 张三,age is 18
2.使用位置参数
1 d = ['张三', 18] 2 a = 'my name is {},age is {}'.format('zhangsan', 19) 3 print(a) 4 b = 'my name is {1},age is {0}'.format(10, 'lisi') 5 print(b) 6 c = 'my name is {},age is {}'.format(*d) 7 print(c) 8 9 结果: 10 my name is zhangsan,age is 19 11 my name is lisi,age is 10 12 my name is 张三,age is 18
3.使用索引
1 d = ['张三', 18] 2 a = 'my name is {0[0]},age is {0[1]}'.format(d) 3 print(a) 4 5 结果: 6 my name is 张三,age is 18

浙公网安备 33010602011771号