python中的字符串
字符串中常用的方法:
一、 查找元素的下标
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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 |
二、比较常用去空格和换行符
1 2 3 4 5 | d = ' asa.sj. ' print (d.strip()) #默认去掉两边空格和换行符,去不掉中间 print (d.strip( '.' )) #传参的话,去掉的是两边的 print (d.lstrip()) #去掉左边的 print (d.rstrip()) #去掉右边的 |
运行结果:
三、判断以什么开头(手机号),以为什么结尾(.cn)
1 2 3 4 5 6 | C = '1Atest.cn' print (C.startswith( '132' )) #True print (C.endswith( '.cn' )) #False 运行结果: False True |
四、大小写转换和判断
1 2 3 4 5 6 7 8 9 10 11 | D = 'asdQWW' print (D.lower()) #转为小写 print (D.upper()) #转为大写 print (D.islower()) #判断是否全为小写,返回True或False print (D.isupper()) #判断是否全为大写,返回True或False 运行结果: asdqww ASDQWW False False |
五、替换
1 2 3 4 5 6 7 8 | 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 |
六、判断是不是纯数字
1 2 3 4 | H = '12' print (H.isdigit()) 运行结果: True |
七、按入参分隔,转为list
1 2 3 4 5 6 7 8 9 10 11 | 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里要全是字符串,不然报错
1 2 3 4 5 6 7 8 | Z = [ 'MLing' , 'xiaohei' , '佳佳' , '1' ] print ( ',' .join(Z)) #依照,链接元素,并转为ztring print (''.join(Z)) #为空的时候,直接连接 print ( '=' .join(Z)) 运行结果: MLing,xiaohei,佳佳, 1 MLingxiaohei佳佳 1 MLing = xiaohei = 佳佳 = 1 |
九、移下为不常用但需要了解的方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | #用来补零 注意要是字符串 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 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)