|
014字符串:各种奇葩的内置方法
1. 修改字符串切片方法
a) >>> str1 = 'I love fishc.com'
b) >>> str1[:6]
c) 'I love'
d) >>> str1
e) 'I love fishc.com'
f) >>> str1[5]
g) 'e'
h) >>> str1[:6] + '插入的字符串' + str1[6:]
i) 'I love插入的字符串 fishc.com'
j) >>> str1 = str1[:6] + '插入的字符串' + str1[6:]
k) >>> str1
l) 'I love插入的字符串 fishc.com'
2. Capitalize():str.capitalize()将首字母改成大写
a) >>> str2 = 'xiaoxie'
b) >>> str2.capitalize()
c) 'Xiaoxie'
3. Casefold():将字符串中所有大写字母改为小写;
a) >>> str2 = "DAXIExiaoxie"
b) >>> str2.casefold()
c) 'daxiexiaoxie' #只是返回了新的字符串,str2并没有改变
d) >>> str2
e) 'DAXIExiaoxie'
4. Center(width):将字符串居中,并使用空格填充至长度width的新字符串,类似于居中;
a) >>> str2.center(40)
b) ' DAXIExiaoxie '
5. Count(sub[,start[,end]]):返回sub在字符串里边出现的次数,start和end参数表示范围,可选。 #中括号的参数表示可选
a) >>> str2.count(xi) #注意查找的是字符串要’’否则会报错!
b) Traceback (most recent call last):
c) File "<pyshell#13>", line 1, in <module>
d) str2.count(xi)
e) NameError: name 'xi' is not defined
f) >>> str2.count('xi')
g) 2
6. Endswith(sub[,start[,end]]):检查字符串是否是以sub结尾的。
a) >>> str2.endswith('xi')
b) False
c) >>> str2.endswith('xie')
d) True
e) startswith(prefix[,start[,end]]):检查字符串是否是以prefix开头的。
7. Expandtabs([tabsize=8]):把字符串中的tab符号(\t)转换为空格,如不指定参数,默认的tabsize = 8。
a) >>> str3 = 'I\tlove\tfishC.com!'
b) >>> str3.expandtabs()
c) 'I love fishC.com!' #可以看出,是包含tab前面的内容共8个位置
8. Find(sub[,start[,end]]):检测sub是否包含在字符串中,如果有则返回索引值(第一个元素的索引值),否则返回-1,start和end参数表示范围,可选。
a) >>> str3.find('efe')
b) -1
c) >>> str3.find('com')
d) 13 #str3中的com中的c是在第13位
e) Rfind(sub[,start[,end]]):类似于find()方法,不过是从右边开始查找。
9. Index(sub[,start[,end]]):与find方法一样,区别在于如果sub不在string重会产生一个异常。
a) >>> str3.index('efe')
b) Traceback (most recent call last):
c) File "<pyshell#21>", line 1, in <module>
d) str3.index('efe')
e) ValueError: substring not found
f) >>> str3.index('com')
g) 13
h) Rindex():类似于index()方法,不过是从右边开始。
10. Is判断类
11. Join(sub):以字符串作为分隔符,插入到sub中所有的字符之间
a) >>> str5 = 'Fishc'
b) >>> str5.join('12345')
c) '1Fishc2Fishc3Fishc4Fishc5'
12. Ljust(width):返回一个左对齐的字符串,并使用空格填充至长度为width的新字符串。
a) >>> str5.ljust(40)
b) 'Fishc '
13. Rjust(width):返回一个右对齐的字符串,并使用空格填充至长度为width的新字符串。
14. Lower():转换字符串中所有大写字符为小写。
15. Upper():转换字符串中所有小写字符为大写。
16. Lstrip():去掉字符串左边的所用空格
a) >>> str6 = ' I love you.'
b) >>> str6.lstrip()
c) 'I love you.'
d) rstrip()去掉字符串右边的所有空格。
e) Strip([chars]):删除字符串前边和后边所有的空格,chars参数可以定制删除的字符,可选,中间的字符不会被删掉。
i. >>> str7 = ' sssaa aasss '
ii. >>> str7.strip()
iii. 'sssaa aasss'
iv. >>> str7.strip('s')
v. ' sssaa aasss ' #由此可见想要规定要删除的字符,必须是该字符一定在字符串的前后,否则没用。
vi. >>> str7 = str7.strip()
vii. >>> str7
viii. 'sssaa aasss'
ix. >>> str7.strip('s')
x. 'aa aa'
17. Partition(sub):找到子字符串sub,把字符串分成一个3元组(pre_sub,sub,fol_sub),如果字符串中不包含sub则返回(‘原字符串’ ,’ ‘ , ‘ ‘)
a) >>> str6 = 'I love fishc'
b) >>> str6.partition('ov')
c) ('I l', 'ov', 'e fishc')
d) Rpartition(sub):类似于partition()方法,不过是从右边开始查找。
18. Replace(old,new[,count])*:把字符串中的old子字符串替换成new子字符串,如果count指定,则替换不超过count次。
a) >>> str6
b) 'I love fishc'
c) >>> str6.replace('fishc','FishC')
d) 'I love FishC'
19. Split(sep=None, maxsplit=-1):不带参数默认是以空格为分隔符切片字符串,如果maxsplit参数有设置,则仅分隔maxsplit个子字符串,返回切边后的子字符串拼接的列表。
a) Eg1.
i. >>> str6
ii. 'I love fishc'
iii. >>> str6.split()
iv. ['I', 'love', 'fishc']
b) Eg2.
i. >>> str6.split('i')
ii. ['I love f', 'shc'] #以i为分隔符,i会被切掉
c) Eg3.
20. Swapcase():翻转,将大写变成小写,小写变大写。
a) >>> str6
b) 'I love fishc'
c) >>> str6.swapcase()
d) 'i LOVE FISHC'
21. Title():返回标题化(所有单词都是以大写开始,其余字母均小写)的字符串。
22. Translate(table):根据table的规则(可以有str.maketrans( ‘a’ , ‘b’ )定制)转换字符串中的字符。
a) >>> str7.translate(str.maketrans('s', 'b'))
b) 'bbbaa aabbb'
c) >>> str.maketrans('s', 'b')
d) {115: 98}
23. Zfill(width):返回长度为width的字符,原字符串右对齐,前边用0填充。
a) >>> str7.zfill(40)
b) '00000000000000000000000000000sssaa aasss'
MicrosoftInternetExplorer402DocumentNotSpecified7.8 磅Normal0小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)
GMT+8, 2024-5-10 16:24
Powered by Discuz! X3.4
© 2001-2023 Discuz! Team.