python3 str 的方法
字符串的常用方法。
·1,capitalize 首字母大写
例子:
#字符串的操作 s = 'dmailT' s1 = s.capitalize() # 首字母大写 print(s1)
运行结果:
DmailT
2,upper全大写,lower全小写,代码如下,以省略上面的代码。
#全大写,全小写 s2 = s.upper() s21 = s.lower() print(s2,s21)
运行结果:
DMAILT dmailt
该方法的需求场景例子:不区分大小写的验证码识别,代码如下:
#验证码识别,不区分大小写 s_str = 'AkJM' print('请输入验证码:%s'%s_str) you_input = input("请输入验证码,不区分大小写.\n") if s_str.upper() == you_input.upper(): print("验证通过!") else: print("验证失败,请重新输入!")
运行结果:
请输入验证码:AkJM
请输入验证码,不区分大小写.
akjm
验证通过!
3,swapcase 大小写翻转,大写变成小写,小写变成大写,代码如下,以省略上面的代码。
#大小写翻转,大写的变成小写,小写的变成大写 s3 = s.swapcase() print(s3)
运行结果:
DMAILt
4,title,被特殊字符或者数字分隔开的单词首字母变成大写。
#每个隔开(特殊字符或者数字)的单词首字母大写 s = ',are$you_ok9thank*you' s4 = s.title() print(s4)
运行结果:
,Are$You_Ok9Thank*You
5,center,文字居中,可以设置填充字符,默认是空白。
#center 字符串居中,可以设置空白填充字符 s = 'Damil!' s5 = s.center(20,"*") print(s5)
运行结果:
*******Damil!*******
6,expandtabs \t 将\t替换掉,\t前面长度低于8位,可以用空白填充到第八位(该方法不常用)
#expandtabs \t 将\t替换掉,\t前面长度低于8位,可以用空白填充到第八位 s = 'Dmail\tstr' print(s) s6 = s.expandtabs() print(s6)
运行结果:
Dmail str
Dmail str
7,公共方法
#公共方法 len s="adsjfdkjshf146456" l = len(s) print(l)
运行结果:
17
8 、startswith ,判断字符串开头 返回bool类型。(endswith同理,用来判断某块字符串以什么结尾)
#startswith 判断字符串开头 返回bool类型 s = 'DmailUserName' s7 = s.startswith(s) s71 = s.startswith(s,2,5) print(s7,s71)
运行结果:
True False
9,find 查找字符串(参数2start 和 参数3 end,填写起始位置可以进行切片查找。)
#find 查找字符串,找到了则返回对应元素的下标,否则返回-1。 s = 'helloWorld' s8 = s.find('hello') s81 = s.find('hellodd') print(s8,s81,type(s8))
运行结果:
0 -1 <class 'int'>
10,strip 默认删除空格,前后的空格。也可以删除其他符号,比如想要删除字符串前面后面的%和*号 ,s.strip('%*')
# strip 删首尾的空格 s = ' Dmail ' print(s) s9 = s.strip() print(s9)
运行结果:
Dmail
Dmail
补充:rstrip 从后面删,前面的不删
lstrip 从前面删,后面的不删
11,count 计算字符串包含多少个指定元素,返回包含个数。没有就返回0。该方法可以将字符串切片进行查找。
#count s = 'aaaaaasjjjaaaaajajja' print(s.count('a'))
运行结果:
13
12,split 分割字符串,返回列表元素。
#split s = 'Java|Python|C++' l = s.split('|') print(l,type(l))
运行结果:
['Java', 'Python', 'C++'] <class 'list'>
13,format的三种玩法 格式化输出
#format的三种玩法 格式化输出 s = '我叫{},今年{}岁,爱好{},再说一下,我叫{}。'.format('狗子',2,'啃骨头','狗子') print(s) s = '我叫{0},今年{1}岁,爱好{2},再说一下,我叫{0}。'.format('狗子',2,'啃骨头','傻逼') print(s) s = '我叫{name},今年{age}岁,爱好{hobby},再说一下,我叫{name}。'.format(name='狗子',age=2,hobby='啃骨头') print(s)
运行结果:
我叫狗子,今年2岁,爱好啃骨头,再说一下,我叫狗子。
我叫狗子,今年2岁,爱好啃骨头,再说一下,我叫狗子。
我叫狗子,今年2,爱好啃骨头,再说一下,我叫狗子。
14,replace,替换字符串。
#replace 替换字符串 s = '狗子今天来到街道,看到了一根骨头,还认识到了另外一个狗子。' s10 = s.replace('狗子','小猫') s10 = s10.replace('一根骨头','一片小鱼干') print(s10)
运行结果:
小猫今天来到街道,看到了一片小鱼干,还认识到了另外一个小猫。
15,is系列
#is 判断是否只由数字组成 s = '123456' s11 = s.isdigit() print(s11,type(s11)) #is 判断是否为数字或者字母组成 s = 'aaammmdm2323' s11 = s.isalnum() print(s11,type(s11)) #is 判断是否只有字母组成 s11 = s.isalpha() print(s11,type(s11))
运行结果:
True <class 'bool'> True <class 'bool'> False <class 'bool'>
其他方法查找:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术