Python3.6字符串方法

潭州Python 2018-07-03 17:05:14

Python3.6字符串方法

序号方法名解释运行结果
1capitalize()将字符串的第一个字符转换为大写'abc'.capitalize()'Abc'
2casefold()将字符变成小写,但是可以处理非ASCII码,如将ß变成ss,这个是lower()做不到的'abcdßef'.casefold()'abcdssef'
3center(width[, fillchar])返回一个指定的宽度  width 居中的字符串,fillchar 为填充的字符,默认为空格。'abc'.center(8,'-')'--abc---'
4count(sub[, start[, end]])返回 str 在  string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数'aaa'.count('a')3
5encode(encoding="utf-8", errors="strict")以encoding 指定的编码格式编码字符串,如果出错默认报一个ValueError 的异常,除非 errors  指定的是'ignore'或者'replace''abc潭州abc'.encode(encoding='utf-8',errors='igonre')b'abc\xe6\xbd\xad\xe5\xb7\x9eabc'
6bytes.decode(encoding="utf-8", errors="strict")Python3 中没有 decode 方法,但我们可以使用 bytes 对象的 decode() 方法来解码给定的  bytes 对象,这个 bytes 对象可以由 str.encode() 来编码返回。st = 'abc潭州abc'.encode(encoding='utf-8',errors='igonre') st.decode(encoding='utf-8')'abc潭州abc'
7endswith(suffix[, start[, end]])检查字符串是否以 suffix 结束,如果start 或者 end 指定则检查指定的范围内是否以 suffix 结束,如果是,返回  True,否则返回 False'abc'.endswith('c')True
8expandtabs(tabsize=8)把字符串 string 中的  tab 符号转为空格,tab 符号默认的空格数是 8'\tabc'.expandtabs()'        abc'
9find(sub[, start[, end]])检测 str 是否包含在字符串中 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1'abc'.find('a')0
10format(args,*kwargs)字符串格式化,使用时字符串中需要包含{}'潭州 {}'.format('Python')'潭州 Python'
11format_map(mapping)类似 str.format(*args, **kwargs) ,不同的是 mapping 是一个字典对象'My name is {name},i am {age} old'.format_map({'name':'TzPy', 'age':18})'My name is TzPy,i am 18 old'
12index(sub[, start[, end]])跟find()方法一样,只不过如果str不在字符串中会报一个异常'hello word!'.index('word')6
13isalnum()如果字符串至少有一个字符并且所有字符都是字母或数字则返 回 True,否则返回 False'123a12'.isalnum()True
14isalpha()如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False'abcd'.isalpha()True
15isdecimal()检查字符串是否只包含十进制字符,如果是返回  true,否则返回 false'12312'.isdecimal()True
16isdigit()如果字符串只包含数字则返回  True 否则返回 False..'123'.isdigit()True
17isidentifier()判断字符串是否可为合法的标识符'dobi 123'.isidentifier()False
18islower()如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False'Ab'.islower()False
19isnumeric()如果字符串中只包含数字字符,则返回  True,否则返回 False'Sjd2'.isnumeric()False
20isprintable()判断字符串的所有字符都是可打印字符或字符串为空'tanzhou 123'.isprintable()True
21isspace()如果字符串中只包含空格,则返回  True,否则返回 False.'  '.isspace()True
22istitle()如果字符串是标题化的(见  title())则返回 True,否则返回 False'Tan Zhou'.istitle()True
23isupper()如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False'Tanzhou'.isupper()False
24join(iterable)以指定字符串作为分隔符,将  seq 中所有的元素(的字符串表示)合并为一个新的字符串'-'.join(['2012', '3', '12'])'2012-3-12'
25ljust(width[, fillchar])返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格'tanzhou'.ljust(9, '^')'tanzhou^^'
26lower()转换字符串中所有大写字符为小写.'ABcdEf'.lower()'abcdef'
27lstrip([chars])截掉字符串左边的空格'  tanzhou'.lstrip()'tanzhou'
28maketrans(x[, y[, z]])创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标str.maketrans('abce', '1234'){97: 49, 98: 50, 99: 51, 101: 52}
29partition(sep)用指定的分隔字符串(参数sep)来分隔原字符串,返回一个包含三个元素的元组。 如是指定的分隔字符串(参数sep)在原字符串中存在,则返中的元组中前后两个元素分别为被分隔开的原字符串(不包括分隔字符串),中间元素为分隔字符中。'changzhi1990'.partition('h')('c', 'h', 'angzhi1990')
30replace(old, new[, max])把将字符串中的 str1  替换成 str2,如果 max 指定,则替换不超过 max 次'dog wow wow jiao'.replace('wow', 'wang', 2)'dog wang wang jiao'
31rfind(sub[, start[, end]])类似于 find()函数,不过是从右边开始查找'outer protective covering'.rfind('er', 20, 21)-1
32rindex(sub[, start[, end]])方法返回子字符串最后一次出现在字符串中的索引位置,该方法与[ rfind()] 方法一样,只不过如果子字符串不在字符串中会报一个异常。'love python love python!'.rindex('python')17
33rjust(width[, fillchar])返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串"this is string example….wow!!!".rjust(50, '*')'****this is string example….wow!!!'
34rpartition(sep)从后往前查找,返回包含字符串中分隔符之前、分隔符、分隔符之后的子字符串的tuple;如果没找到分隔符,返回字符串和两个空字符串"TanZhou PythonVip".rpartition('o')('TanZhou Pyth', 'o', 'nVip')
35rsplit(sep=None, maxsplit=-1)通过指定分隔符对字符串进行分割并返回一个列表,默认分隔符为所有空字符,包括空格、换行(\n)、制表符(\t)等。类似于 [split()] 方法,只不过是从字符串最后面开始分割。"this is a ipython3".rsplit('i',1)['this is a ', 'python3']
36rstrip([chars])删除字符串字符串末尾的空格"this is tanzhou    " .rstrip()                 "this is tanzhou111".rstrip("1")"this is tanzhou"                         "this is tanzhou"
37split(sep=None, maxsplit=-1)num=string.count(str)) 以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num 个子字符串'123423664234' .split('2')[ '1', '34' , '3664', '34']
38splitlines([keepends])按照行('\r',  '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。'ab c\n\nde fg\rkl\r\n'.splitlines();['ab c', '', 'de fg', 'kl']
39startswith(prefix[, start[, end]])检查字符串是否是以 obj  开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查'mynameis'.startswith('na',2,7)True
40strip([chars])在字符串上执行  lstrip()和 rstrip()'  abc  '.strip()'abc'
41swapcase()将字符串中大写转换为小写,小写转换为大写"this is TANZHOU".swapcase()THIS IS tanzhou
42title()返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())'this is tanzhou'.title()'This Is Tanzhou'
43translate(table)根据 str 给出的表(包含 256 个字符)转换 string 的字符, 要过滤掉的字符放到 deletechars 参数中ma = str.maketrans('abce', '1234')                                   st = 'abcdefgabcd'    st.translate(ma)'123d4fg123d'
44upper()转换字符串中的小写字母为大写"python".upper()PYTHON
45zfill(width)返回长度为 width 的字符串,原字符串右对齐,前面填充0'Tzpython'.zfill(10)'00Tzpython'