py05_字符串内置方法

2020-07-05  本文已影响0人  阿登20
字符串方法:
一、查找和替换
二、判断类型,返回要么True,要么False
三、大小写转换
四、文本对齐
五、去除空白符:空格 \n \t \r
六、拆分和拼接

字符串方法

一、查找和替换

01 find查找字符串方法,查找str在开始位置结束位置的索引,找不到会返回-1

结果:

4
4
-1
-1

02 rfind方法和find方法类似,找出字符串的最高索引,找不到返回 -1

结果:

7
7
7
-1

03 index跟find类似,不过找不到会报错,一般要慎用。

结果:

5

5

5

ValueError: substring not found

04 rindex,找出字符串的最高索引,找不到同样会报错!

结果:

9
9
ValueError: substring not found

05 startswith,检查字符串是否是以指定子字符串开头,返回True or False

结果:

True
True
False

06 endswith,检测字符串是否以指定子字符串结束,是返回true,不是返回false.

结果:

True
True
False

07 replace 指定子字符串替换为另一个字符串,并且返回结果。

结果:

this is adeng
this is 阿登

结果:

then en 阿登   
then is 阿登
this is 阿登

08 count统计子字符串出现的次数.返回int

结果:

3
2
1

二、判断类型,返回要么True,要么False

01 isalnum,是否是由字母组成或数字组成或数字加字母组成 True,否则返回 False。

02 isalpha,至少有一个字符并且所有字符都是字母或汉字则返回 True,否则返回 False

print("带有特殊符号的字符串:", "abd!".isalpha())
print("字母和数字组成的字符串:", "abd213213".isalpha())
print("全数字组成的字符串:", "213213".isalpha())
print("全汉字组成的字符串:", "发发嘎嘎嘎".isalpha())
print("汉字和字母组成的字符串:", "发发嘎daaw嘎嘎".isalpha())
print("带空格的字符串:", "发发嘎嘎嘎 ".isalpha())

结果:

带有特殊符号的字符串: False
字母和数字组成的字符串: False
全数字组成的字符串: False
全汉字组成的字符串: True
汉字和字母组成的字符串: True
带空格的字符串: False

03 isdigit,字符串只包含数字则返回 True 否则返回 False

# isdigit 字符串只包含数字则返回 True 否则返回 False

print("带空格在数字:","123132 ".isdigit())   # 返回 False
print("带小数点的数字:","123132.".isdigit())  # 返回 False
print("只有数字:","4234234".isdigit())       # 返回 True

04 isspace,检查字符串只包含空白符.空白符:空格 \r \n \t

print("  \t  \n \r".isspace())   # True
print("  \t  \n \rdada11".isspace())  # False

05 isdecimal,检查字符串只包含数字,正整数才行

06 isnumeric,包含数字则返回 True. 全角数字 汉字数字

结果:

True
True
True
True
True
False

07 istitle,单词首字母大写,其他小写

结果:

单词首字母都大写: True
单词首字母都大写,部分单词剩余部分未小写: False
第一个单词首字母大写,其他单词小写: False
 

08 islower和 isupper,检查字符串是否全部小写或者大写

结果:

False
True
True

三、大小写转换

01 lower,转换成小写

02 upper转成大写

03 title 每个单词首字母转换成大写

04 capitalize() 把字符串第一个字母转化为大写

05 swapcase() 大小写互换

四、文本对齐

01 center,返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格

结果:

+++++++++++++++++++++++++++阿登帅哥++++++++++++++++++++++++++++++++++

02 ljust,左对齐,参数和center一致

03 rjust,右对齐,参数和center一摸一样

结果:

阿登帅哥==============================================
==============================================阿登帅哥

五、去除空白符:空格 \n \t \r

01 strip lstrip rstrip,默认移除空白符

结果:

strip去除两端空白符: Python! !*
strip指定移除两端多个字符: Python
lstrip移除左边的空白符: Python! !*   
lstrip指定移除多个字符: thon! !*   
rstrip右边的空白符:   Python! !*
rstrip指定移除右边的字符空格*!:   Python

六、拆分和拼接

01 split分割字符串

02 splitlines按照(\r,\r\n,\n分隔,返回一个包含各行的作为元素的列表

03 rsplit 做右到左分割,跟split相反

04 partition,分隔符讲字符串分隔成三个子字符串的元组

05 join,序列中的元素以指定的字符连接生成一个新的字符串

# 案例将1个手输入的字符串,倒叙排。这里我们用join方法
# 方法1
str_n = input("请输出一串字符串:\n")
# 定义一个空列表
list_one = []

for i in list(range(len(str_n)-1,-1,-1)): # 倒叙取出索引
    list_one.append(str_n[i])
print(list_one)
print("".join(list_one))

# 方法2:
"""
字符串用循环索引倒着取值,加入到一个空列表,再用空字符串join方法拼接得到一个倒叙字符串

"""
list_one2 = []
str_m = input("请输出一串字符串:\n")
num_1 = len(str_m) -1
while (num_1 >=0):
    
    list_one2.append(str_m[num_1])
    # 控制循环次数 每次-1
    num_1 -= 1             # 也可以用break 如果num_1 == 0,就break跳出循环
    
print("".join(list_one2))
# 这里完全可以用列表推导式简化代码,之后我们将到列表会演示的
'''

请输出一串字符串:
fasfafj额外发886712
217688发外额jfafsaf

'''
上一篇 下一篇

猜你喜欢

热点阅读