字符串中常用的方法:
一、 查找元素的下标
s='sjakshsaks' print(s.count('a')) #元素出现的次数 print(s.find('p'))#找不到不报错 返回-1 print(s.index('a',4)) #从第四个下标开始找元素为a的下标 print(s.index('p')) #找不到有报错 运行结果: 2 -1 7 Traceback (most recent call last): File "D:/牛牛/day2/字符串.py", line 6, in <module> print(s.index('p')) #找不到有报错 ValueError: substring not found
二、比较常用去空格和换行符
d=' asa.sj. ' print(d.strip()) #默认去掉两边空格和换行符,去不掉中间 print(d.strip('.'))#传参的话,去掉的是两边的 print(d.lstrip())#去掉左边的 print(d.rstrip())#去掉右边的
运行结果:
三、判断以什么开头(手机号),以为什么结尾(.cn)
C='1Atest.cn' print(C.startswith('132')) #True print(C.endswith('.cn')) #False 运行结果: False True
四、大小写转换和判断
D='asdQWW' print(D.lower()) #转为小写 print(D.upper()) #转为大写 print(D.islower())#判断是否全为小写,返回True或False print(D.isupper())#判断是否全为大写,返回True或False 运行结果: asdqww ASDQWW False False
五、替换
G='kh kjjkhk' print(G.replace(' ','' )) #将空格替换 print(G.replace('k','U')) #将K替换成U print(G.replace('k','M',2))#开始替换第2位之前的K为M 运行结果: khkjjkhk Uh UjjUhU Mh kjjkhk
六、判断是不是纯数字
H='12' print(H.isdigit()) 运行结果: True
七、按入参分隔,转为list
K='sad,d da,dad,ad ad,ada,ad' print(K.split(',')) print(K.split()) #不传默认按空格分隔 print(K.split('a')) #按传入的参分隔 print(K.split('D'))#不存在的话 直接转为一个列表 运行结果: ['sad', 'd da', 'dad', 'ad ad', 'ada', 'ad'] ['sad,d', 'da,dad,ad', 'ad,ada,ad'] ['s', 'd,d d', ',d', 'd,', 'd ', 'd,', 'd', ',', 'd'] ['sad,d da,dad,ad ad,ada,ad']
八、按入参分隔list里的元素,转为string,注意list里要全是字符串,不然报错
Z=['MLing','xiaohei','佳佳','1'] print(','.join(Z)) #依照,链接元素,并转为ztring print(''.join(Z))#为空的时候,直接连接 print('='.join(Z)) 运行结果: MLing,xiaohei,佳佳,1 MLingxiaohei佳佳1 MLing=xiaohei=佳佳=1
九、移下为不常用但需要了解的方法
#用来补零 注意要是字符串 E='1' print(E.zfill(3)) #传的是总共的长度 #首字母大写 F='asa!sa' print(F.capitalize()) 运行结果: 001 Asa!sa #居中显示 I='欢迎光临' print(I.center(10,'*')) 运行结果 ***欢迎光临*** #判断是不是空格 K=' ' print(K.isspace() 运行结果: True #格式化 L='学号是,{name},{id}' print(L.format(name='Ling',id=12)) print(L.format_map({'name':'MLng','id':12})) 运行结果: 学号是,Ling,12 学号是,MLng,12 #判断内容 J = '12' print(J.isalnum()) ##如果是大小写字母、汉字、数字返回true,其他的字符串都返回false print(J.isalpha()) #如果是大小写字母、汉字返回true,其他的字符串都返回false 运行结果: True False