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'>

 

其他方法查找:

https://www.runoob.com/python3/python3-string.html

posted @ 2019-09-21 13:48  Dmail  阅读(702)  评论(0编辑  收藏  举报