定义 str 为一字符串;
函数方法 | 描述 | |
---|---|---|
长度 | len(str) | 返回字符串长度; |
最大最小 | max(str) | 返回字符串 str 中最大的字母; |
min(str) | 返回字符串 str 中最小的字母; | |
判断 | str.isalnum() | 若字符串至少有一个字符,并且所有字符都是字母或数字则返回 Ture,否则返回 False; |
str.isalpha() | 若字符串至少有一个字符,并且所有字符都是字母则返回 Ture,否则返回 False; | |
str.isdigit() | 若字符串只包含数字,则返回 Ture,否则返回 False;(与 str.isnumeric() 的区别见底部代码演示) | |
str.isnumeric() | 若字符串只包含数字字符,则返回 Ture,否则返回 False; | |
str.isdecimal() | 检查字符串是否只包含十进制字符,是返回 Ture,否则返回 False; | |
str.islower() | 若字符串中包含至少一个区分大小写的字符,并且这些区分大小写的字符都是小写,则返回 Ture,否则返回 False; | |
str.isupper() | 若字符串中包含至少一个区分大小写的字符,并且这些区分大小写的字符都是大写,则返回 Ture,否则返回 False; | |
str.isspace() | 若字符串中只包含空白,则返回 Ture,否则返回 False; | |
str.title() | 返回标题化的字符串,即所有单词都是以大写开始,其余字母均小写; | |
str.istitle() | 若字符串是标题化的,则返回 Ture,否则返回 False; | |
大小写 | str.capitalize() | 将字符串的第一个字符转换为大写; |
str.lower() | 转换字符串中所有大写字符为小写; | |
str.upper() | 转换字符串中的小写字母为大写; | |
str.swapcase() | 将字符串中大写转换为小写,小写转换为大写; | |
删除 | str.lstrip() | 截掉字符串左边的空格或指定字符; |
str.rstrip() | 删除字符串末尾的空格; | |
str.strip() | 将字符串首位空格均删除; | |
填充 | str.center(width, fillchar) | 返回一个指定宽度 width 居中的字符串,fillchar 为填充字符(默认为空格); |
str.ljust(width[, fillchar]) | 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串(fillchar 默认为空格); | |
str.rjust(width[, fillchar]) | 返回一个原字符串右对齐,并使用 fillchar 填充至长度 width 的新字符串(fillchar 默认为空格); | |
str.zfill(width) | 返回长度为 width 的字符串,原字符串右对齐,前面填充0; | |
检查与查找 | str.startswith(substr, beg=0, end=len(str)) | 检查字符串是否以 substr 开头,是则返回 Ture,否则返回 False,若指定 beg 和 end ,则在指定范围内检查; |
str.endwith(suffix, beg=0, end=len(str)) | 检查字符串是否以 suffix 结束,若指定 beg 和 end ,则返回指定范围内是否以 suffix 结束; | |
str.find(str1, beg=0, end=len(str)) | 检测 str1 是否包含在字符串中(若指定 beg 和 end ,则检查是否包含在指定范围内),若包含,返回开始的索引值,否则返回 -1; | |
str.rfind(str1, beg=0, end=len(str)) | 类似于前面所述的 find 函数,不过是从右边开始查找; | |
str.index(str1, beg=0, end=len(str)) | 检测 str1 是否包含在字符串中(若指定 beg 和 end ,则检查是否包含在指定范围内),若包含,返回开始的索引值,否则报异常; | |
str.rindex(str1, beg=0, end=len(str)) | 类似于前面所述的 index 函数,不过是从右边开始查找; | |
str.count(str1, beg=0, end=len(str)) | 返回 str1 在 str 中出现的次数,若指定 beg 和 end ,则返回指定范围内 str 出现的次数; | |
替换 | str.replace(old, new[, max]) | 把字符串中的 old 替换为 new,若指定 max,则替换不超过 max 次; |
分隔 | str.join(seq) | 以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串,如:'.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'; |
str.splitlines([keepends]) | 按照行('\r'、'\r\n'、'\n')分隔,返回一个包含各行作为元素的列表,若参数 keepends 为 False,不包含换行符,若为 Ture,则保留换行符; | |
编码解码 | str.encode(encoding='UTF-8', errors='strict') | 以 encoding 指定的编码格式编码字符串,如果出错默认报 ValueError 的异常(除非 Error 指定的是 'ignore' 或 'replace'); |
str.decode(encoding='utf-8', error='strict') | 解码给定的 str 对象(str 对象可以由 str.encode() 来编码返回); | |
str.expandtabs(tabsize=8) | 把字符串中的 tab 符号转为空格,tab 符号默认的空格数是8; | |
截取 | str.split(str1, num=str.count(str1)) | 若 num=str.count(str1),以 str1 为分隔符截取字符串,若num有指定值,则仅截取 num+1 个子字符串; |
转换 | str.maketrans() | 创建字符映射的转换表,如果有两个参数,它们必须是长度相等的字符串,并且在生成的字典中,x 中的每个字符都将映射到 y 中相同位置的字符; |
str.translate(table, deletechars='') | 根据 table 表转换 str 字符,要过滤掉的字符放在 deletechars 参数中; |
str.isdigit() 与 str.isnumeric() 的区别演示如下:
a = '123'
b = '一二三'
print(a.isdigit())
print(a.isnumeric())
print(b.isdigit())
print(b.isnumeric())