Python之字符串方法

字符串用法总结

 1、将首字母大写

test = 'alex'
v = test.capitalize()
print(v)
结果:'Alex'

2、将所有的大写字母变成小写

test = 'aLEx'
v = test.casefold()
print(v)
结果:'alex'

3、replace替换~将gr替换成222,后面2表示替换几个

test = 'gfrgretgrtgreh'
v = test.replace('gr', '222', 2)
print(v)
结果:'gfr222et222tgreh'

4、设置宽度,并将内容居中---20代指总长度,‘*’表示用*来填充空白位置

test = 'gfrgretgrtgreh'
v = test.center(20,'*')     #居中放置
print(v)
结果:'***gfrgretgrtgreh***'

test = 'alex'
v = test.ljust(20,'*')        #放在左边
print(v)
结果:'alex****************'

v = test.rjust(20,'*')        #放在右边
print(v)
结果:'****************alex'

v = test.zfill(20)              #默认只用0来填充
print(v)
结果:'0000000000000000alex'

5、count,计数,可设定范围,设置2起始位置和4结束位置查找e出现的次数

test = 'dfjetre347efgfe'
v = test.count('e',2,4)
print(v)
结果:1

6、判断以什么开头和结尾

test = 'dfjetre347efgfe'
v1 = test.startswith('a')
v2 = test.endswith('e')
print(v1,v2)
结果:False True

7、设置sub子序列,从开始往后找,找到第一个之后,获取其位置(初始包括其),可以加起始位置和结束位置,未找到返回-1

test = 'dfjetrex347efgfe'
v = test.find('ex',2,8)
print(v)
结果:6

8、格式化,将一个字符串中的占位符替换为指定的值({从0开始,做占位符})

test1 = 'i am {name},age {a}'
v = test1.format(name='alex', a=20)
print(v)
结果:'i am alex,age 20'
test2 = 'i am {0},age {1}'
test3 = 'i am {N},age {Y}'
v1 = test2.format('alex', 20)
v2 = test3.format_map({'N':'kill','Y':20})
print(v1,v2)
结果:'i am alex,age 20' 'i am kill,age 20'

9、index找不到时会-报错

test = 'alexalex'
v = test.index('ex')
print(v)
结果:2

10、判断字符串中是否只包括 字母和数字 (都是字母或者数字也可以)

test = 'uaf4354grgr'
v = test.isalnum()
print(v)
结果:True

11、首先进行断句(比如20个(n个)长度中断一次,出现\t,缺多少个就用\t代表剩下的个数),可以使用\t和这个方法来制作表格

test = 'username\temail\tpassword\nzhangsan\tzhang@qq.com\t123\nzhangsan\tzhang@qq.com\t123'
v = test.expandtabs(20)
print(v, len(v))
结果:

username            email               password
zhangsan            zhang@qq.com        123
zhangsan            zhang@qq.com        123 136

12、判断是否只包括纯字母或者汉字,或者字母加汉字

test = 'asdf我edfe'
v = test.isalpha()
print(v)
结果:True

13、均为判定是否为数字,isdecimal是十进制数(只支持纯数字),isdigit表示二进制数(更牛)和特殊数字②,isnumeric是中文数字(最牛)(二进制数也支持)

test = '②123二'
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1, v2, v3)
结果:False False True

14、字母,数字,下划线

test = '_123'
v = test.isidentifier()
print(v)
结果:True

15、判断是否存在不可显示的字符\t,\n,存在为False,不存在True

test = 'fdfgr\ngirgr'
v = test.isprintable()
print(v)
结果:False

16、判断是否全部都是空格

test = 'fgr gtht'
v = test.isspace()
print(v)
结果:False

17、istitle()判断标题首字母是否全部大写,title则是将普通的字符串转换成标题,即首字母全部变成大写

test = 'Return True if S is a titlecased string'
v1 = test.istitle()
print(v1)
结果:False
test = 'Return True if S is a titlecased string'
v2 = test.title()
print(v2)
结果:Return True If S Is A Titlecased String

18、用自己定义的一个分隔符,将字符串中的每一个元素进行拼接

test = '你是风儿我是沙'
v = '*'.join(test)
print(v)
结果:你*是*风*儿*我*是*沙

19、islower或者isupper判断是否为大小写,lower/upper则是将其转换成大小写

test = 'ALex'
v = test.islower()
v1 = test.lower()
print(v,v1)
结果:False alex
v3 = test.isupper()
v4 = test.upper()
print(v3,v4)
结果:False ALEX

20、默认去除左右或者所有的空白,strip还可以去除\t和\n,还可以在括号里面指定去除的字符(优先最多匹配)

test = '\n alex '
v = test.lstrip()
v1 = test.rstrip()
v2 = test.strip()
print(v)
print(v1)
print(v2)
结果:
alex 

 alex
alex

21、将字符串v中的aeiou,使用12345进行替换

test1 = 'aeiou'
test2 = '12345'
v = 'rugargjrkig4;rgrgr'
m = str.maketrans(test1, test2)
new_v = v.translate(m)
print(new_v)
结果:r5g1rgjrk3g4;rgrgr

22、分割符

test = 'testasdsddfg'
v = test.partition('s')     #找到第一个s进行分割,只能分割成3份
v1 = test.rpartition('s')   #从右边开始找到第一个s进行分割,只能分割成3份
v2 = test.split('s',2)      #可以指定找到s的个数进行分割为几部分,而s则去除了,或者默认则找到全部s进行分割(s不包括在结果里面)
v3 = test.rsplit()          #从右边开始可以指定找到s的个数进行分割,而s则去除了,或者默认则找到全部s进行分割
print(v1, v2, v3)
结果:('testasd', 's', 'ddfg') ['te', 'ta', 'dsddfg'] ['testasdsddfg']

23、只能根据换行\n,进行分割,True(保留\n),False(去除\n),即是否保留换行

test = 'afdfmkgrkgmrkr\ngrgrgrg\ngrgrr'
v = test.splitlines(True)
print(v)
结果:['afdfmkgrkgmrkr\n', 'grgrgrg\n', 'grgrr']

24、进行大小写转换,将大写变成小写,将小写变成大写

test = 'AlEx'
v = test.swapcase()
print(v)
结果:aLeX

25、len 和 join 的使用,要求输出对应子序列的索引

test = '你是风儿我是沙'
for i in range(0, len(test)):
    print(i, test[i])
结果:
        0 你
        123456 沙                

26、切片操作

test1 = 'alex'
v = test[2]
print(v)
结果:e

test2 = 'zhangsan'
v = test[2:4]
print(v)
结果:an
posted @ 2018-10-16 18:10  九霄风云  Views(267)  Comments(0)    收藏  举报