常用字符串方法:
1.string.find(str): 在字符串中查找字串,返回子串所在位置的最左端索引。如果没有找到返回-1。
String.find(str, start) 指定起始位置
String.find(str,start, end) 指定起始和终止位置end为检索范围内下一个索引 不包括end所指定的字符
str = "aaa ffff adsff !!! aaa"
print(str.find("aaa"))
print(str.find("aaa", 1))
print(str.find("aaa", 1, 6))
输出:
0
19
-1
2.join方法,用指定字符串连接字符串列表
str_list = ['1', 'w', '3'] str = ' + ' print(str.join(str_list))
输出:
1 + w + 3
注意所连接列表的元素必须都是字符串
3.lower方法返回字符串的小写字母版
print('HapPy'.lower())
输出:happy
4.replace
返回某字符串的所有匹配项均被替换之后得到的字符串
Str.replace(old, new ,count) count为从左至右替换次数
str = 'is a happy dog is is' print(str.replace('is', 'are')) print(str.replace('is', 'are', 1))
输出:
are a happy dog are are
are a happy dog is is
5.split
join的逆方法
print('1+2+3+4+5'.split('+'))
输出:['1', '2', '3', '4', '5']
如果不提供任何分隔符,程序会把空格作为分隔符(空格、制表、换行等)
6.strip
返回去除两侧(不包括内部的)字符串
print(' 1 + 2 + 3 + 4 + 5 '.strip())
1 + 2 + 3 + 4 + 5
7.translate
Translate方法和replace方法一样,可以替换字符串的某些部分,区别是translate方法只处理单个字符串。优势在于可以同时进行多个转换。
使用translate之前需要完成一张转换表,使用maketrans函数即可
table = str.maketrans('q', 'h') print('qqqsdf'.translate(table))
输出:
hhhsdf
8.字符串格式化
(1)% 标记转换说明符的开始。
(2)转换标志: - 表示左对齐;+ 表示在转换值之前要加上正负号;“”(空白字符)表示正数之前保存空格;0表示转换值若位数不够则用0填充
(3)最小字段宽度(可选):转换后的字符串至少应该具有该指定值的宽度。*表示宽度值从元组中读出。
(4)点(.)后跟精度值(可选):实数表示小数位数,字符串表示最大字段宽度。*表精度从元组中读出。
(5)转换类型
d, i 带符号十进制整数
o 不带符号的八进制
u 不带符号的十进制
x 不带符号的十六进制(小写)
X 不带符号的十六进制(大写)
e 科学计数法表示的浮点数(小写)
E 科学计数法表示的浮点数(大写)
F,f 十进制浮点数
s 字符串(使用str转换任意Python对象)
r 字符串(使用repr转换任意Python对象)