关于 Python 的字符串处理相关的方法还是非常多的,由于我正在学习 Python,于是就把 Python 中这些混杂的用于 string 的函数总结出来,在自己忘记的时候便于查找,希望对于有类似需求的人有所帮助。
captalize() 函数
功能
将一个字符串的第一个字母大写
用法
str.captalize()
参数
无
返回值
string
示例代码
str = "hello world!"print "str.capitalize(): ", str.capitalize()
运行结果
tr.capitalize(): Hello world!
center(width, fillchar) 函数
将字符串居中,居中后的长度为 width
功能
将字符串居中,居中后的长度为 width
用法
str.center(width[, fillchar])
参数
width: 表示字符串总长度
fillchar: 使字符串居中所填充的字符,默认为空格
返回值
返回填充字符后的字符串
示例代码
str = "hello world!"print "str.center(20): ", str.center(20)print "str.center(20,'-'): ", str.center(20,'-')
运行结果
tr.center(20): hello world!str.center(20,'-'): ----hello world!----
count(str, start=0, end=len(string)) 函数
功能
返回该字符串中出现某字符串序列(或字符)的次数
用法
str.count(sub, start=0, end=len(string))
参数
sub: 被查找的字符串序列
start: 开始查找的索引位置,默认为字符串开始
end: 结束查找的索引位置,默认为字符串结束
返回值
被查找的序列在字符串的查找位置中出现的次数
示例代码
str = "hello world! hello world!"sub = "o"print "str.count(sub): ", str.count(sub) sub = "hello"print "str.count(sub, 5) ", str.count(sub, 5)
运行结果
str.count(sub): 4str.count(sub, 5) 1
decode(encoding=’UTF-8’,errors=’strict’) 函数 & encode(encoding=’UTF-8’,errors=’strict’)
功能
使用特定编码将字符串解码(decode)/编码(encode)
用法
str.decode(encoding='UTF-8',errors='strict')
str.encode(encoding='UTF-8',errors='strict')
参数
encoding: 使用的编码格式
errors: 设置不同的错误处理方法,其他选项有
ignore
,replace
,xmlcharrefreplace
,backslashreplace
返回值
编码/解码后的字符串
示例代码
str = "hello world!"str = str.encode('base64', 'strict')print "Encoded str: ", strprint "Decoded str: ", str.decode('base64')
运行结果
Encoded str: aGVsbG8gd29ybGQh Decoded str: hello world!
endswith(suffix, start=0, end=len(string)) 函数
功能
判断字符串是否是以某字符串结尾的
用法
str.endswith(suffix, start=0, end=len(string))
参数
suffix: 被查找的字符串
start: 字符串查找的起始位置,默认为字符串起始位置
end: 字符串查找的结束位置,默认为字符串结束位置
返回值
如果字符串是以 suffix
结尾的返回 True
, 否则返回 False
示例代码
str = "hello world!"suffix = "world!"print str.endswith(suffix) suffix = "llo"print str.endswith(suffix,0,4)print str.endswith(suffix,0,5)
运行结果
TrueFalseTrue
expandstabs(tabsize=8) 函数
功能
提供自定义 tab(/t) 长度的方法,默认为8
用法
str.expandtabs(tabsize=8)
参数
tabsize: 表示自定义 tab 的长度
返回值
string
示例代码
str = "hello\tworld!"print "Original str: " + strprint "Defalut expanded tab: " + str.expandtabs();print "Double expanded tab: " + str.expandtabs(16)
运行结果
Original str: hello world! Defalut expanded tab: hello world! Double expanded tab: hello world!
find(str, start=0, end=len(string)) 函数
功能
在字符串的某指定位置查找某字符串
用法
str.find(str, start=0, end=len(string))
参数
str: 被查找的子字符串
start: 查找的起始位置,默认为字符串起始位置
end: 查找的结束位置,默认为字符串结束位置
返回值
如果查找到,返回该子字符串的索引;未查找到,返回-1
示例代码
str = "hello world!"str1 = "wo"print str.find(str1)print str.find(str1, 8)
运行结果
6-1
index(str, start=0, end=len(string)) 函数
功能
功能上与 find() 相同,只是在未找到子字符串是抛出异常
用法
str.index(str, start=0, end=len(string))
参数
同 find()
返回值
如果查找到,返回该子字符串的索引;未查找到,抛出异常
示例代码
str = "hello world!"str1 = "wo"print str.index(str1)print str.index(str1, 8)
运行结果
6 Traceback (most recent call last): File "teststrmethods.py", line 6, in <module> print str.index(str1, 8) ValueError: substring not found
isalnum() 函数
功能
判断该字符串是否只是字母数字组合
用法
str.isalnum()
参数
无
返回值
如果该字符串是字母数字组合,返回 True
,否则返回 False
示例代码
str = "helloworld"print str.isalnum() str = "hello world"print str.isalnum() str = "hello123"print str.isalnum() str = "hello123!"print str.isalnum()
运行结果
TrueFalseTrueFalse
isalpha() 函数
功能
判断该字符串是否是字母组合
用法
str.isalpha()
参数
无
返回值
如果该字符串是字母组合,返回 True
,否则返回 False
示例代码
str = "helloworld"print str.isalpha() str = "hello world"print str.isalpha() str = "hello123"print str.isalpha() str = "hello123!"print str.isalpha()
运行结果
TrueFalseFalseFalse
isdigit() 函数
功能
判断该字符串是否只包含数字
用法
str.isdigit()
参数
无
返回值
如果该字符串只包含数字,则返回 True
,否则返回 False
示例代码
str = "hello123"print str.isdigit() str = "123456"print str.isdigit()
运行结果
FalseTrue
islower() 函数
功能
判断该字符串中是否只是小写字母
用法
str.islower()
参数
无
返回值
如果该字符串中只是小写字母,返回True
,否则返回False
示例代码
str = "hello wolrd!"print str.islower() str = "Hello Wolrd!"print str.islower()
运行结果
TrueFalse
e() 函数
功能
判断该字符串是否只包含空格
用法
str.isspace()
参数
无
返回值
如果该字符串只包含空格,返回True
,否则返回False
示例代码
str = " "print str.isspace() str = "Hello Wolrd!"print str.isspace()
运行结果
TrueFalse
istitle() 函数
功能
检查该字符串中的单词是否首字母都大写
用法
str.istitle()
参数
无
返回值
如果该字符串中的单词首字母都大写了,返回True
,否则返回False
示例代码
str = "Hello world!"print str.istitle() str = "Hello Wolrd!"print str.istitle()
运行结果
FalseTrue
isupper() 函数
功能
判断该字符串中的字母是否都是大写
用法
str.isupper()
参数
无
返回值
如果该字符串中的字母都是大写,返回True
,否则返回False
示例代码
str = "Hello world!"print str.isupper() str = "HELLO WORLD!"print str.isupper()
运行结果
FalseTrue
join(seq) 函数
功能
用该字符串连接某字符序列(seq)
用法
str.join(sequence)
参数
sequence: 被连接的字符序列
返回值
返回连接之后的字符串
示例代码
str = "-"sequence = ("hello", "world", "everyone", "!")print str.join(sequence)
运行结果
hello-world-everyone-!
len(string) 函数
功能
得到该字符串的长度
用法
len(str)
参数
无
返回值
返回该字符串长度
示例代码
str = "Hello world!"print "the length of str: ", len(str)
运行结果
the length of str: 12
ljust(width, fillchar=’ ‘)函数
功能
在字符串的右边填充字符使得字符串达到指定长度
用法
str.ljust(width, fillchar=' ')
参数
width: 填充后的目标长度
fillchar: 用于填充的字符,默认为空格
返回值
返回填充后的字符串
示例代码
str = "Hello world"print str.ljust(15)print str.ljust(15,'!')
运行结果
Hello world Hello world!!!!