python字符串的表示_Python字符串方法总结

Python字符串方法图示:

(温馨提示:对图片点右键——在新标签页中打开图片)

884071-20171127154213565-171071034.png

1、index()

定义:查找并返回指定str的索引位置,如果没找到则会抛异常(查找的顺序是从左至右)可以指定范围:开始位置和结束位置进行查找。

格式:“字符串内容”.index('指定的字符串',指定范围)

例1:不指定范围默认是从左至右的顺序查询指定字符串“i”的索引位置

s = 'yujiemeigui'

s1 = s.index('i')

print(s1)

输出结果:

3

图示:

1160712-20171203150455179-1008130737.png

例2:查找一串字符串时,返回这个被查找字符串的首个字符的索引位置

s = 'yujie meigui'

s1 = s.index('yujie') # 查找指定字符串,返回首个字母的索引位置

print(s1)

输出结果:

0

图示:

1160712-20171203151055726-692991619.png

例3:查找并返回指定范围字符“k”的索引位置,查找方向以从左至右的顺序查找,且指定的范围顾首不顾尾

s = 'yujiemeigui'

s1 = s.index('i',4,8)

# 表示从索引4到8的位置进行查找,顾首不顾尾

# 如果有多个“i”字符串时则返回第一个“i”的索引位置

print(s1)

输出结果:

7

图示:

1160712-20171203152029913-1926543478.png

例4:若未找到字符串则会抛出异常

s = 'yujiemeigui'

s1 = s.index('x') # 若未找到字符串则会抛出异常

print(s1)

输出结果:

ValueError: substring not found

图示:

1160712-20171203152308710-1295362098.png

2、rindex()

定义:查找并返回指定str的索引位置,如果没找到则会抛异常(查找的顺序是从右至左)可以指定范围:开始位置和结束位置进行查找

格式:"字符串内容".rindex('指定的字符串',指定范围)

例1:不指定范围默认是从右至左的顺序查询指定字符串的索引位置

s = 'yujiemeigui'

s1 = s.rindex('u')

# 不指定范围默认是从右至左的顺序查询指定字符串的索引位置

print(s1)

输出结果:

9

图示:

1160712-20171203152949147-2134468181.png

例2:若未找到字符串则会抛出异常

s = 'yujiemeigui'

s1 = s.rindex('z') # 若未找到字符串则会抛出异常

print(s1)

输出结果:

ValueError: substring not found

图示:

1160712-20171203152909101-1956946613.png

例3:查找并返回指定范围字符“k”的索引位置,查找方向在从右至左的顺序查找,且指定的范围顾首不顾尾

s = 'yujiemeigui'

s1 = s.rindex('u',1,10)

# 表示从索引位置2到10的位置进行查找,顾首不顾尾

# 如果有多个“u”字符串时则返回第一个“u”的索引位置

# rindex与index只是查找方向不同,索引位置不变

print(s1)

输出结果:

9

图示:

1160712-20171203153448679-1826681978.png

3、find()

定义:查找并返回指定str的索引位置,如果没找到则返回:-1(查找的顺序是从左至右)可以指定范围:开始位置和结束位置进行查找

格式:"字符串内容".find('指定的字符串',指定范围)

例1:不指定范围默认是从左至右的顺序查询指定字符串“u”的索引位置

s = 'yujiemeigui'

s1 = s.find('u')

print(s1)

输出结果:

1

图示:

1160712-20171203154221304-1003950339.png

例2:查找一串字符串时,返回这个被查找字符串的首个字符的索引位置

s = 'yujiemeigui'

s1 = s.find('meigui')

# 查找一串字符串时,返回这个被查找字符串的首个字符的索引位置

print(s1)

输出结果:

5

图示:

1160712-20171203154044569-2097459774.png

例3:查找并返回指定范围字符“k”的索引位置,查找方向以从左至右的顺序查找,且指定的范围顾首不顾尾

s = 'yujiemeigui'

s1 = s.find('e',4,10)

# 查找并返回指定范围3到12之间的字符“k”的索引位置,从左至右的顺序查找,且指定的范围顾首不顾尾

# 如果有多个“k”字符串时则返回第一个“k”的索引位置

print(s1)

输出结果:

4

图示:

例4:若未找到字符串则返回-1

s = 'yujiemeigui'

s1 = s.find('x') # 没有找到字符串"x"时返回:-1

print(s1

输出结果:

-1

图示:

1160712-20171203154754038-1803151350.png

4、rfind()

定义:查找并返回指定str的索引位置,如果没找到则返回:-1(查找的顺序是从右至左)可以指定范围:开始位置和结束位置进行查找

格式:"字符串内容".rfind('指定的字符串',指定范围)

例1:不指定范围默认是从右至左的顺序查询指定字符串的索引位置

s = 'yujiemeigui'

s1 = s.rfind('i') # 从右至左的顺序查找并返回字符串'i'的索引位置

print(s1)

输出结果:

10

图示:

例2:查找并返回指定范围字符“k”的索引位置,查找方向在从右至左的顺序查找,且指定的范围顾首不顾尾

s = 'yujiemeigui'

s1 = s.rfind('i',4,10)

# 查找并返回指定范围3到12之间的字符“i”的索引位置,

# 从右至左的顺序查找,且指定的范围顾首不顾尾

# 如果有多个“i”字符串时则返回第一个“i”的索引位置

print(s1)

输出结果:

7

图示:

1160712-20171203155625929-1700660423.png

例3:若未找到字符串则返回-1

s = 'yujiemeigui'

s1 = s.rfind('x')

print(s1)

输出结果:

-1

图示:

1160712-20171203155747788-140450963.png

5、count()

定义:统计指定的(str)在字符串中出现的次数,并返回这个数,若没找到返回: 0,

可以指定范围:开始位置和结束位置进行统计

格式:"字符串内容".count('指定的字符串',指定范围)

例1:统计指定字符串“k”在字符串中出现的次数并返回这个数

s = 'yujiemeigui'

s1 = s.count('e') # 得到字符串“e”的个数

print(s1)

输出结果:

2

图示:

1160712-20171203160058429-1959136046.png

例2:统计指定范围内的字符串“k”的个数,且顾首不顾尾

s = 'yujiemeigui'

s1 = s.count('e',3,10) # 统计3到10之间的字符串“e”的个数,顾首不顾尾

print(s1)

输出结果:

2

图示:

1160712-20171203160517444-1246209667.png

6、strip()

定义:移除字符串左右两侧指定的字符,并返回移除指定字符串后的字符串,括号内不指定字符串默认移除空格。

格式:"字符串内容".strip(‘指定字符串’)

例1:移除字符串左右两侧的空格

s = ' yujiemeigui '

s1 = s.strip() # 移除字符串左右两侧的空格

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203160931147-1801026912.png

例2:移除字符串左右两侧的指定字符串

s = '***yujiemeigui***'

s1 = s.strip('*') # 移除字符串左右两侧的字符串“*”

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203161143522-1744478990.png

7、lstrtip()

定义:移除字符串左侧指定的字符,并返回移除指定字符串后的字符串,括号内不指定字符串默认移除空格。

格式:“字符串内容”.lstrip(“指定字符串”)

例1:移除字符串左侧的空格

s = ' yujiemeigui '

s1 = s.lstrip() # # 去除字符串左侧的空格

print(s1,'<-右侧空格并未去除')

输出结果:

yujiemeigui <-右侧空格并未去除

图示:

1160712-20171203161513632-1415811235.png

例2:移除字符串左侧的指定字符串

s = '@@@@yujiemeigui@@@@'

s1 = s.lstrip('@') # # 去除字符串左侧的字符串"@"

print(s1)

输出结果:

yujiemeigui@@@@

图示:

1160712-20171203161814866-1619817394.png

8、rstrip()

定义:移除字符串右侧指定的字符,并返回移除指定字符串后的字符串,括号内不指定字符串默认移除空格。

格式:“字符串内容”.rstrip(“指定字符串”)

例1:移除字符串右侧的空格

s = ' yujiemeigui '

s1 = s.rstrip() # 去除字符串右侧的空格

print(s1)

输出结果:

左侧的空格未去除—> yujiemeigui

图示:

例2:移除字符串右侧的指定字符串

s = '****yujiemeigui****'

s1 = s.rstrip('*') # 去除字符串右侧的字符串"*"

print(s1)

输出结果:

****yujiemeigui

图示:

1160712-20171203162935819-636635835.png

9、split()

定义:通过指定分隔符按从左到右的顺序对字符串进行切片,并以一个列表的形式返回。括号内不指定字符串表示默认以空格为分隔符。可以指定分隔符的个数

格式:“字符串内容”.split(“指定分隔符”)

例1:以空格为分隔符进行切片操作

s = 'yujiemeigui'

s1 = s.split() # 以空格作为分隔符进行切片

print(s1)

输出结果:

['yujiemeigui']

图示:

1160712-20171203163209897-874198295.png

例2:以指定字符作为分隔符进行切片操作

s = 'yujiemeigui'

s1 = s.split('e') # 以字符“e”作为分隔符进行切片

print(s1)

输出结果:

['yuji', 'm', 'igui']

图示:

1160712-20171203163332116-1262887536.png

例3: 以指定字符作为分隔符进行切片操作且限定分隔符的个数

s1 = s.split('e')

# 以字符“e”作为分隔符进行切片,

# 且只限定1个"e"作为分隔符,字符串中如果有多个“e”则按从左至右的顺序来选定这个分隔符

print(s1)

输出结果:

['yuji', 'm', 'igui']

图示:

1160712-20171203163614569-1787415420.png

10、rsplit()

定义:通过指定分隔符按从右到左的顺序对字符串进行切片,并以一个列表的形式返回。括号内不指定字符串表示默认以空格为分隔符。可以指定分隔符的个数

格式:“字符串内容”.rsplit(“指定分隔符”)

例1:以空格作为分隔符进行切片

s = 'yujiemeigui'

s1 = s.rsplit() # 以空格作为分隔符进行切片

print(s1)

输出结果:

['yujiemeigui']

图示:

1160712-20171203163818147-1931685157.png

例2:以指定字符作为分隔符进行切片操作

s = 'yujiemeigui'

s1 = s.rsplit('i') # 以字符“i”作为分隔符进行切片

print(s1)

输出结果:

['yuj', 'eme', 'gu', '']

图示:

1160712-20171203163926960-1088811949.png

例3: 以指定字符作为分隔符进行切片操作,且限定分隔符的个数(这里就体现与split的区别了)

s = 'yujiemeigui'

s1 = s.rsplit('g')

# 以字符“k”作为分隔符进行切片,

# 且只限定1个"g"作为分隔符,字符串中如果有多个“g”

# 则按从右至左的顺序来选定这个分隔符

print(s1)

输出结果:

['yujiemei', 'ui']

图示:

1160712-20171203164249632-674236688.png

11、splitlines()

定义:括号中不加参数默认为False,此时分隔符默认指定为“\n” 、“\n\r” 、“\r”对字符串进行分隔,以一个列表的形式返回;当括号中参数改为True时仍然会以“\n” 、“\n\r” 、“\r”进行分隔,但是在生成的元素中会保留分隔符。并以一个列表的形式返回。

格式:“字符串内容”.splitlines(True/False)

例1:括号中不加参数时默认为False,分隔符“\n”、“\r\n”、“\r”在生成元素时不会被保留

s = '\nyujie\rmeigui\r'

s1 = s.splitlines() #括号中不加参数默认为False,且以“\n”、"\n\r"、"\r"为分隔符

print(s1)

输出结果:

['', 'yujie', 'meigui']

图示:

1160712-20171203164547554-138031587.png

例2:括号中为True时的操作,分隔符“\n”、“\r\n”、“\r”在生成元素时会被保留

s = '\nyujie\rmeigui\r'

s1 = s.splitlines(True) # 括号中为True时,分隔符“\n”、“\r\n”、“\r”在生成元素时会被保留

print(s1)

输出结果:

['\n', 'yujie\r', 'meigui\r']

图示:

12、replace()

定义:将指定的字符串替换成新的字符串,并返回替换后的字符串。

可以指定替换的次数,若不指定次数则默认替换全部。

格式:“字符串内容”.replace(“要替换的内容”,“新的内容”,指定的替换的次数)

例1:替换全部的指定的内容。

s = 'yujiemeigui'

s1 = s.replace('meigui','玫瑰')

print(s1)

输出结果:

yujie玫瑰

图示:

1160712-20171203165206132-1140236177.png

例2:指定替换的次数,按从左到右的顺序进行替换

s = 'yujiemeigui'

s1 = s.replace('meigui','玫瑰',1)

print(s1)

输出结果:

yujie玫瑰

图示:

1160712-20171203170532897-315935283.png

例3:当要替换的内容不存在时也不会报错,直接返回字符串的原内容

s = 'yujiemeigui'

s1 = s.replace('z','玫瑰') # 要替换的内容不存在时,直接返回字符串的原内容

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203171039757-2091145281.png

13、join()

定义:将序列中的元素以指定的字符拼接生成一个新的字符串,并返回这个字符串

格式:“指定字符串内容”.join(一个序列)

例1:将序列中的元素以空字符串拼接一个成一个新的字符串

s = ''

t = ('y','u','j','i','e','m','e','i','g','u','i')

s1 = s.join(t) #将序列中的元素以空字符串拼接一个成一个新的字符串

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203171618507-1715385063.png

例2:将序列中的元素以“-”字符串拼接一个成一个新的字符串

s = '-'

t = ('y','u','j','i','e','m','e','i','g','u','i')

s1 = s.join(t) # 将序列中的元素以“-”字符串拼接一个成一个新的字符串

print(s1)

输出结果:

y-u-j-i-e-m-e-i-g-u-i

图示:

1160712-20171203171834960-2137232845.png

14、format()

定义:字符串格式化。有三种方法:1、按默认从左到右的默认顺序传值,2、按指定位置传值,3、按设置参数传值,返回格式化后的字符串

格式1:“字符串-{}-字符串-{}”.format(“内容1”,“内容2”)

# 输出的结果为:字符串-内容1-字符串-内容2

# 格式化后的内容分别按从左到右的默认顺序分别对应到字符串中每个大括号里

格式2:“字符串-{2}-字符串-{1}”.format(“内容1”,“内容2”)

# 输出的结果为:字符串-内容2-字符串-内容1

# 格式化后的内容分别按指定位置传值到字符串中对应的大括号里

格式3:“字符串-{变量名1}-字符串-{变量名2}”.format(变量名1 = “内容 ”,变量名2 = “内容2”)

# 输出的结果为:字符串-内容1-字符串-内容12

# 格式化后的内容分别按指定位置传值到字符串中对应的大括号里

例1:按默认顺序对字符串进行格式化

s = "I am {},I'm {} years old!"

s1 = s.format('lisa',18)

print(s1)

输出结果:

I am lisa,I'm 18 years old!

图示:

1160712-20171203172722866-1330511353.png

例2:按位置对字符串进行格式化

s = "I am {1},I'm {0} years old,My favorite sport is {2}"

s1 = s.format('18','lisa','running')

print(s1)

输出结果:

I am lisa,I'm 18 years old,My favorite sport is running

图示:

1160712-20171203173323819-1328934473.png

例3:按位置对字符串进行格式化

s = "I am {name},I'm {age} years old!"

s1 = s.format(age = '18',name = 'lisa')

print(s1)

输出结果:

I am lisa,I'm 18 years old!

图示:

1160712-20171203173739257-811454270.png

15、format_map()

定义:字符串格式化,与format不同的是括号中的mapping是一个字典对象,返回格式化后的字符串。

格式:“字符串-{key1}-字符串-{key2}”.format_map({key1 : “value1 ”,key2 : “value2”})

# 输出的结果为:字符串-value1-字符串-value2

例:字符串的格式,传入一个字典对象

info = {'name':'lisa','age':18}

s = 'My name is {name},I am {age} years old'

s1 = s.format_map(info)

print(s1)

输出结果:

My name is lisa,I am 18 years old

图示:

1160712-20171203174427913-1830945519.png

16、encode()

定义:以指定的编码格式对字符串进行编码,并返回编码后的二进制

格式:“字符串内容”.encode(“指定的字符编码”)

例:以utf-8的方式进行编码并解码。

s = '御姐玫瑰'

# 编码

s1 = s.encode('utf-8')

print(s1) # 得到以"utf-8"编码后的二进制数

# 解码

s2 = s1.decode('utf-8')

print(s2)

输出结果:

b'\xe5\xbe\xa1\xe5\xa7\x90\xe7\x8e\xab\xe7\x91\xb0'

御姐玫瑰

图示:

1160712-20171203175020226-622567884.png

17、startswith()

定义:判断字符串是否是以指定字符串开头并返回布尔值,并可以指定范围。

格式:“字符串内容”.startswith(“指定字符串”,指定范围)

例1:判断字符串是否以指定字符串开头

s = 'yujiemeigui'

s1 = s.startswith('yujie')

print(s1)

输出结果:

True

图示:

1160712-20171203175149304-596239926.png

例2:判断字符串是否以指定字符串开头,并指定范围

s = 'yujiemeigui'

s1 = s.startswith('i',3) #判断字符串i是否以指定字符串开头,并指定范围

print(s1)

输出结果:

True

图示:

1160712-20171203175419929-925362790.png

例3:判断字符串是否以指定字符串开头

s = 'yujiemeigui'

s1 = s.startswith('xiaobai') # 在原字符串中没找到以指定内容开头的内容则返回False

print(s1)

输出结果:

False

图示:

1160712-20171203175531085-1466139031.png

18、endswith()

定义:判断字符串是否是以指定字符串结尾并返回布尔值,并可以指定范围。

格式:“字符串内容”.endswith(“指定字符串”,指定范围)

例1:判断字符串是否以指定字符串结尾

s = 'yujiemeigui'

s1 = s.endswith('meigui')

print(s1)

输出结果:

True

图示:

例2:判断字符串是否以指定字符串开头

s = 'yujiemeigui'

s1 = s.endswith('x')

print(s1)

输出结果:

False

图示:

1160712-20171203175738085-502758580.png

19、upper()

定义:将字符串中的小写字母转换成大写字母,并返回转换成大写字母后的字符串

格式:"小写字母的字符串".upper()

例:将小写字母的字符串转换成大写字母。

s = 'yujiemeigui'

s1 = s.upper()

print(s1)

输出结果:

YUJIEMEIGUI

图示:

1160712-20171203175852757-1060545405.png

20、lower()

定义:将字符串中的大写字母转换成小写字母,并返回转换成小写字母后的字符串。

格式:"大写字母的字符串".lower()

例:将字符串中的大写字母转换成小写字母

s = 'YujiemeiGui'

s1 = s.lower()

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203180000054-703290204.png

21、title()

定义:将字符串中的所有单词的首字母的替换成大写字母,并返回转换后的字符串

格式:“字符串”.title()

例:将字符串中的所有单词的首字母替换成大写字母

s = 'yu jie mei gui'

s1 = s.title()

print(s1)

输出结果:

Yu Jie Mei Gui

图示:

1160712-20171203180135585-422988306.png

22、swapcase()

定义:将字符串的大小写字母进行转换,并返回转换后的字符串

格式:“字符串”.swapcase()

例:将字符串的大小写字母进行转换

s = 'YujieMeigui'

s1 = s.swapcase()

print(s1)

输出结果:

yUJIEmEIGUI

图示:

23、ljust()

定义:返回一个左对齐的字符串,并使用指定长度的填充符号,不指定填充符号默认使用空格作为填充符号。若指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示。

格式:“字符串”.ljust(填充的长度,“指定填充符号”)

例1:返回一个以空格为填充的左对齐的字符串。

s = 'yujiemeigui'

s1 = s.ljust(30)

print(s1,'<-结束')

输出结果:

yujiemeigui <-结束

图示:

1160712-20171203180516288-1315174109.png

例2:返回一个以指定字符串作为填充的左对齐的字符串。

s = 'yujiemeigui'

s1 = s.ljust(30,'*')

print(s1)

输出结果:

yujiemeigui*******************

图示:

1160712-20171203180635022-1347767446.png

例3:指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示

s = 'yujiemeigui'

s1 = s.ljust(10,'*') # 指定填充符号的长度小于字符串的长度,则不会显示填充符号

print(s1,'<-结束')

输出结果:

yujiemeigui <-结束

图示:

1160712-20171203180818288-389423601.png

24、rjust()

定义:返回一个右对齐的字符串,并使用指定长度的填充符号,不指定填充符号默认使用空格作为填充符号。若指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示。

格式:“字符串”.rjust(填充的长度,“指定填充符号”)

例1:返回一个以空格为填充的右对齐的字符串

s = 'yujiemeigui'

s1 = s.rjust(30)

print('开始->',s1

输出结果:

开始-> yujiemeigui

图示:

例2:返回一个以指定字符串作为填充的右对齐的字符串。

s = 'yujiemeigui'

s1 = s.rjust(30,'*')

print(s1)

输出结果:

*******************yujiemeigui

图示:

1160712-20171203181136460-1244875902.png

例3:指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示

s = 'yujiemeigui'

s1 = s.rjust(9,'*') # 指定填充符号的长度小于字符串的长度,则不会显示填充符号

print('开始->',s1)

输出结果:

开始-> yujiemeigui

图示:

1160712-20171203181303382-33475108.png

25、center()

定义:返回一个居中对齐的字符串,并使用指定长度的填充符号,不指定填充符号默认使用空格作为填充符号。若指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示。

格式:“字符串”.center(填充的长度,“指定填充符号”)

例1:返回一个以空格为填充的居中对齐的字符串

s = 'yujiemeigui'

s1 = s.center(30)

print('开始->',s1,'<-结束')

输出结果:

开始-> yujiemeigui <-结束

图示:

1160712-20171203181527819-1735052744.png

例2:返回一个以指定字符串作为填充的居中对齐的字符串。

s = 'yujiemeigui'

s1 = s.center(30,'@')

print('开始->',s1,'<-结束')

输出结果:

开始-> @@@@@@@@@yujiemeigui@@@@@@@@@@ <-结束

图示:

1160712-20171203181629085-846611822.png

例3:指定的填充符号的长度小于字符串本身的长度,填充符号则不会显示

s = 'yujiemeigui'

s1 = s.center(9,'@') # 指定填充符号的长度小于字符串的长度,则不会显示填充符号

print('开始->',s1,'<-结束')

输出结果:

开始-> yujiemeigui <-结束

图示:

1160712-20171203181825038-1119562266.png

26、capitalize()

定义:返回一个将字符串首字母大写、字符串中的其它字母变为小写的字符串

格式:“字符串”.capitalize()

例:返回一个将字符串首字母大写、字符串中的其它字母变为小写的字符串

s = 'yUJIEmEIgHi'

s1 = s.capitalize()

print(s1)

输出结果:

Yujiemeighi

图示:

1160712-20171203182043397-655084668.png

27、partition()

定义:按从左到右的顺序,对字符串进行分割,返回一个包含3个元素的元组,这个元组中这3个元素分别为:指定分割符,以及以这个分隔符为中心的左右两侧的字符串。

格式:“字符串”.partition("指定分隔符")

例1:对字符串进行分割,返回一个包含3个元素的元组,按从左到右的顺序分割

s = 'yujiemeigui'

s1 = s.partition('i')

print(s1)

输出结果:

('yuj', 'i', 'emeigui')

图示:

1160712-20171203205741444-82137051.png

例2:若在字符串中未找到指定的分隔符则返回一个包含3个元素的元组,这个元组元素包含字符串本身,以及两个空字符串

s = 'yujiemeigui'

s1 = s.partition('x') # 指定一个不存在的字符串

print(s1)

输出结果:

('yujiemeigui', '', '')

图示:

1160712-20171203205916538-1258006772.png

28、rpartition()

定义:按从右到左的顺序,对字符串进行分割,返回一个包含3个元素的元组,

这个元组中这3个元素分别为:指定分割符,以及以这个分隔符为中心的左右两侧的字符串。

格式:“字符串”.rpartition("指定分隔符")

例1:对字符串进行分割,返回一个包含3个元素的元组,按从右到左的顺序分割

s = 'yujiemeigui'

s1 = s.rpartition('e')

print(s1)

输出结果:

('yujiem', 'e', 'igui')

图示:

1160712-20171203210149272-622489227.png

例2:若在字符串中未找到指定的分隔符,则返回一个包含3个元素的元组,

这个元组元素包含两个空字符串,以及字符串本身.

s = 'yujiemeigui'

s1 = s.rpartition('x') # 指定一个不存在的字符串

print(s1)

输出结果:

('', '', 'yujiemeigui')

图示:

1160712-20171203210413679-360631586.png

29、translate()

定义:根据参数table给出的表(包含 256 个字符)转换字符串的字符,要过滤掉的字符放到 deletechars 参数中。返回这替换后的字符串

格式:“原字符串”.translate({映射表})

例1:通过映射表替换s2字符串中的指定字符

s1 = 'abcde' # 原字符串中要替换的字符

num = '12345' # 相应的映射字符的字符串。

s2 = "aaxxbbxxccxxddxxee" # 原字符串

form = s2.maketrans(s1,num) # 创建映射表,让s1字符串中的字母分别对应num中的字母并指向s2字符串。

print(s2.translate(form)) # 使用上面映射表进行翻译,并把并把deletechars中有的字符删掉。

输出结果:

11xx22xx33xx44xx55

图示:

884071-20171127151114597-490292464.png

30、zifill()

定义:按指定长度在字符串的左侧填充"0"补齐,并返回这个补齐“0”后的字符串

格式:“字符串”.zfill(指定长度)

例1:按指定长度在字符串的左侧填充"0"补齐,包含字符串本身

s = 'yujiemeigui'

s1 = s.zfill(20)

print(s1)

输出结果:

000000000yujiemeigu

图示:

1160712-20171203210856147-1321077843.png

例2:按指定长度在字符串的左侧填充"0"补齐,当填充“0”的个数小于字符串长度时,则不会显示。

s = 'yujiemeigui'

s1 = s.zfill(10) # 填充的“0”的个数小于字符串的长度

print(s1)

输出结果:

yujiemeigui

图示:

1160712-20171203211106835-1392035302.png

31、maketrans()

定义:用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。返回一个一一对应的字典

格式:“原字符串”.maketrans("原字符串中要替换的字符",“相应的映射字符的字符串”)

例:创建字符映射的转换表,并进行翻译

s1 = 'abcde' # 原字符串中要替换的字符

num = '12345' # 相应的映射字符的字符串。

s2 = "aaxxbbxxccxxddxxee" # 原字符串

form = s2.maketrans(s1,num) # 创建映射表,让s1字符串中的字母分别对应num中的字母并指向s2字符串。

print(form) # 查看这个映射表

print(s2.translate(form)) # 使用上面映射表进行翻译,并把并把deletechars中有的字符删掉。

输出结果:

{97: 49, 98: 50, 99: 51, 100: 52, 101: 53}

11xx22xx33xx44xx55

图示:

884071-20171127151453472-1445187671.png

32、expandtabs()

定义:expandtabs() 方法把字符串中的“\t”转为空格,并返回替换空格后的字符串。(\t默认的空格数是 8)。

格式:“字符串中的 \t ”.expandtabs(空格数)

例1:将字符串中的“\t”替换成20个空格数

s = 'yujie\tmeigui'

s1 = s.expandtabs(20)

print(s1)

输出结果:

yujie meigui

图示:

1160712-20171203211637476-741379178.png

例2:括号中不加参数默认是8个空格

s = 'yujie\tmeigui'

s1 = s.expandtabs()

print(s1)

输出结果:

yujie meigui

图示:

1160712-20171203211528788-1998820368.png

33、isdigit()

定义:判断字符串是否只由数字组成,并返回一个布尔值。

格式:“字符串”.isdigit()

例1:判断字符串是否只由数字组成

s = 'yujiemeigui'

s1 = s.isdigit()

print(s1)

输出结果:

False

图示:

1160712-20171203211754929-2045505395.png

例2:判断字符串是否只由数字组成

s = '888888'

s1 = s.isdigit()

print(s1)

输出结果:

True

图示:

1160712-20171203211843382-170451869.png

34、isalpha()

定义:判断字符串是否只由字母组成,并返回一个布尔值。

格式:“字符串”.isalpha()

例1:判断字符串是否只由字母组成

s = 'yu jie mei gui'

s1 = s.isalpha() # 因为原字符串中有空格,所以返回False

print(s1)

输出结果:

False

图示:

1160712-20171203212024460-964121595.png

例2:判断字符串是否只由字母组成

s = 'yujiemeigui'

s1 = s.isalpha()

print(s1)

输出结果:

True

图示:

1160712-20171203212331741-193444850.png

35、isalnum()

定义:判断字符串是否只由字母或数字组成,并返回一个布尔值。

格式:“字符串”.isalnum()

例1:判断字符串是否只由字母或数字组成。

s = 'yujiemeigui666'

s1 = s.isalnum()

print(s1)

输出结果:

True

图示:

1160712-20171203212256069-350252398.png

例2:判断字符串是否只由字母或数字组成。

s = 'yujiemeigui@$'

s1 = s.isalnum()

print(s1)

输出结果:

False

图示:

1160712-20171203212418882-1920186640.png

36、isupper()

定义:判断字符串中所有的字母是否为大写。并返回一个布尔值。

格式:“字符串”.isupper()

例1:判断字符串中所有的字母是否为大写

s = 'YUJIEMEIGUI@$!'

s1 = s.isupper()

print(s1)

输出结果:

True

图示:

1160712-20171203212627147-537870340.png

例2:判断字符串中所有的字母是否为大写

s = 'yuJIEMEIGUI@$!'

s1 = s.isupper()

print(s1)

输出结果:

False

图示:

1160712-20171203212715647-1305163362.png

37、islower()

定义:判断字符串中所有的字母是否为小写。并返回一个布尔值。

格式:“字符串”.islower()

例1:判断字符串中所有的字母是否为小写

s = 'yujiemeigui@$!'

s1 = s.islower()

print(s1)

输出结果:

True

图示:

1160712-20171203212821366-1480600043.png

例2:判断字符串中所有的字母是否为小写

s = 'YUJIemeigui@$!'

s1 = s.islower()

print(s1)

输出结果:

False

图示:

1160712-20171203215405366-958920847.png

38、isspace()

定义:判断字符串是否只由空白字符组成,并返回一个布尔值

格式:“字符串”.isspace()

例1:判断字符串是否只由空白字符组成

s = 'yujiemeigui'

s1 = s.isspace()

print(s1)

输出结果:

False

图示:

1160712-20171203213043757-439425916.png

例2:判断字符串是否只由空白字符组成

s = ' '

s1 = s.isspace()

print(s1)

输出结果:

True

图示:

884071-20171127130504940-1879511583.png

39、istitle()

定义:判断字符串中所有的单词的首字母是否为大写且其他字母为小写。并返回一个布尔值。

格式:“字符串”.istitle()

例1:判断字符串中所有的单词的首字母是否为大写且其他字母为小写

s = 'Yu Jie Mei Gui@!$ 666'

s1 = s.istitle()

print(s1)

输出结果:

True

图示:

1160712-20171203213245288-1759005093.png

例2:判断字符串中所有的单词的首字母是否为大写且其他字母为小写

s = 'Yu jie MEI Gui@!$ 666'

s1 = s.istitle()

print(s1)

输出结果:

False

图示:

1160712-20171203213349741-2026072257.png

40、isdecimal()

定义:判断字符串是否只包含十进制字符。这种方法只存在于unicode对象。并返回一个布尔值。(注意:定义一个十进制字符串,只需要在字符串前添加 'u' 前缀即可)

格式:“字符串”.isdecimal()

例1:判断字符串是否只包含十进制字符

s = '6666666666'

s1 = s.isdecimal()

print(s1)

输出结果:

True

图示:

1160712-20171203213454257-21881344.png

例2:判断字符串是否只包含十进制字符

s = 'yujiemeigui'

s1 = s.isdecimal()

print(s1)

输出结果:

False

图示:

1160712-20171203213710741-1692591193.png

41、isnumeric()

定义:判断字符串是否只由数字组成。只针对unicode对象。并返回一个布尔值。

格式:“字符串”.isnumeric()

例1:判断字符串是否只由数字组成。

s = '9999999999'

s1 = s.isnumeric()

print(s1)

输出结果:

True

图示:

1160712-20171203213646679-743101996.png

42、isprintable()

定义:判断字符串中的所有字符都是否为可打印的(或字符串为空)的则返回True,否则返回False

(可打印字符:ASCII码中,第0~32号及第127号是控制字符;第33~126号是可打印字符,其中第48~57号为0~9十个阿拉伯数字;65~90号为26个大写英文字母,97~122号为26个小写英文字母,其余的是一些标点符号、运算符号等)

格式:“字符串”.isprintable()

例1:判断字符串中的所有字符都是否为可打印的

s = '\t\n'

s1 = s.isprintable()

print(s1)

输出结果:

False

图示:

1160712-20171203213848491-1697165567.png

例2:判断字符串中的所有字符都是否为可打印的

s = 'yujiemeigui'

s1 = s.isprintable()

print(s1)

输出结果:

True

图示:

1160712-20171203214604335-77777750.png

例3:判断字符串中的所有字符都是否为可打印的

s = '御姐玫瑰'

s1 = s.isprintable()

print(s1)

输出结果:

True

图示:

1160712-20171203214345601-339978131.png

43、isidentifier()

定义:判断是否是合法标识符,实际上是判断变量名是否合法,并返回一个布尔值

格式:“字符串”.isidentifier()

例1:判断是否是合法标识符

s = '御姐玫瑰'

s1 = s.isidentifier()

print(s1)

输出结果:

True

图示:

1160712-20171203214835272-1312530737.png

例2:判断是否是合法标识符

s = '\t\n'

s1 = s.isidentifier()

print(s1)

输出结果:

False

图示:

1160712-20171203215136757-2145644705.png

例3:判断是否是合法标识符

s = ' '

s1 = s.isidentifier()

print(s1)

输出结果:

False

图示

1160712-20171203215013460-562790238.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值