一、字符串大小写转换
函数名 | 说明 |
capitalize() | 首字母大小,其余小写 |
title() | 每个单词首字母大小,其余小写 |
upper() | 将字符串所有元素转换为大写 |
lower() | 将字符串所有元素转换为小写 |
swapcase | 将字符串中大写转换为小写,小写转换为大写 |
s = "i have a DreaM"
print(s.capitalize())
print(s.title())
print(s.upper())
print(s.lower())
print(s.swapcase())
I have a dream
I Have A Dream
I HAVE A DREAM
i have a dream
I HAVE A dREAm
二、字符串判断函数
函数名 | 说明 |
isupper() | 判断字符串是否全部为大写,字符串至少有一个字符,注意中文字符无关大小写 |
islower() | 判断字符串是否全部为小写,字符串至少有一个字符 |
isdigit() | 判断字符串是否只包含数字 |
isalnum() | 判断字符串是否由字母和数字组成 |
islapha() | 判断字符串是否全部由字母组成 |
isspace() | 判断字符串是否只有空白字符组成(回车、换行、水平制表符) |
istitle() | 判断字符串是否为标题 |
s = "i have a 一个 DreaM"
s1 = "HH中"
s2 = "hhn中"
s3 = "I Have A Dream"
s4 = "123a"
s5 = " "
print(s1.isupper())
print(s2.islower())
print(s3.istitle())
print(s4.isalnum())
print(s4.isdigit())
print(s2.isalpha()) #中文也算
print(s5.isspace())
True
True
True
True
False
True
True
三、字符串计数
函数名 | 说明 |
len() | 返回字符串长度 |
count(sub,start,end) | 在指定范围内统计字符串中特定字符出现的次数 |
s = "i have a dream"
print(len(s))
print(s.count('a'))
14
3
四、字符串两端操作
函数名 | 说明 |
strip() | 去掉字符串左右两边指定字符,默认是去掉空格 |
lstrip() | 去掉字符串左两边指定字符,默认是去掉空格 |
rstrip() | 去掉字符串右两边指定字符,默认是去掉空格 |
endwith() | 判断字符串是否以str结尾 |
startwith() | 判断字符串是否以str开头 |
s = "####i have a dream######"
print(s.strip("#"))
print(s.lstrip("#"))
print(s.rstrip("#"))
print(s.startswith("#"))
print(s.endswith("#"))
i have a dream
i have a dream######
####i have a dream
True
True
五、字符串合并与替换
函数名 | 说明 |
join() | 以指定字符串作为分隔符,将seq按照指定字符串进行连接,返回的是字符串 |
replace(old,new,max) | 将字符串中old替换为new。如果指定max,则替换不超过max次;默认为全部替换 |
s = ['i',"have",'a','dream']
s1 = "i have a dream"
print(' '.join(s))
print(s1.replace("a","o"))
i have a dream
i hove o dreom
六、字符串填充对齐
函数名 | 说明 |
center(width,fillchar) | 返回指定长度的字符串,原始字符串居中显示,以fillchar填充,默认为空格 |
ljust(width,fillchar)) | 指定字符串长度,内容靠左边。不足的位置用指定字符填充,默认空格,返回字符串 |
rjust(width,fillchar)) | 指定字符串长度,内容靠右边。不足的位置用指定字符填充,默认空格,返回字符串 |
zfill(width) | 指定字符串长度,内容靠右,不足的位置用0填充 |
s = "center"
print(s.center(10,"#"))
print(s.ljust(10,"#"))
print(s.rjust(10,"#"))
print(s.zfill(10))
##center##
center####
####center
0000center
七、字符串分割
函数名 | 说明 |
split(seq) | 按照指定字符分割,返回列表 |
rsplit()() | 和split类似,从右边开始分割 |
splitlines() | 按照“行进行分割”,返回列表 |
partition(str) | 找到第一个str,以str作为边界,讲字符串分为三部分,返回一个元祖 |
rpatition(str) | 与partition类似,反向查找 |
s = "i have a dream"
s1 = "i have a dream\ni have a dream"
s2 = "i have a dream,you have a dream"
print(s.split())
print(s.rsplit())
print(s1.splitlines())
print(s2.partition("a"))
['i', 'have', 'a', 'dream']
['i', 'have', 'a', 'dream']
['i have a dream', 'i have a dream']
('i h', 'a', 've a dream,you have a dream')
八、字符串查找
函数 | 说明 |
index | 类似于find,找不到会报异常,提示:ValueError |
find | 查找子串第一次出现的位置,如果找到则返回相应的索引,否则返回-1 |
s = "i have a dream"
print(s.find("ha"))
print(s.index("ha"))
2
2