Python字符串方法

 

1、大小写转换

1.1 lower、upper

:小写

:大写

 

1.2 title、capitalize

:字符串中所有单词首字母大写且其他字母小写的格式

:首字母大写,其他字母全部小写

 

1.3 swapcase

  S.Swapcase():大写—>小写,小写—>大写

 

2、isXXX判断

  2.1 isalpha,isdecimal,isdigit,isnumeric,isalnum

判断字符串是否是数字

判断字符串是否是字母

判断是否是数字和字母的集合

 

2.2 islower,isupper,istitle(要求S中至少要包含一个字符串字符,否则直接返回False)

  S.lower():判断是否小写

判断是否大写

判断首字母是否大写

 

2.3 isspace,isprintable,isidentifier

判断字符串是否是空白(空格、制表符、换行符等)

判断是否可打印字符(例如制表符、换行符就是不可打印字符,但空格是)

是否满足标志符定义规则

 

3、填充

 3.1 center

将字符串居中,左右两边使用fillchar进行填充,使得整个字符串的长度为width。fillchar默认为空格。如果width小于字符串的长度,则无法填充直接返回字符串本身(不会创建新字符串对象)。

 

和rjust

使用fillchar填充在字符串S的右边。

使用fillchar填充在字符串S的左边

 

  3.3 zfill  

   S.zfill( ):用0填充在字符串S的左边使其长度为width。如果S前有正负号+/-,则0填充在这两个符号的后面,且符号也算入长度。


4、子串搜索

  4.1 count

(sub[,start[,end]]):返回字符串S中子串sub出现的次数,可以指定从哪里开始计算(start)以及计算到哪里结束(end),索引从0开始计算,不包括end边界。

 

  4.2 endswith,startswith

检查字符串S是否以suffix结尾,返回布尔值的True和False.suffix可以是一个元组(tuple)

判断字符串S是否是以prefix开头。

 

  4.3 find,rfind和index,rindex

   S.find(sub[, start[, end]]);find()搜索字符串S中是否包含子串sub,如果包含,则返回sub的索引位置,否则返回"-1"。可以指定起始start和结束end的搜索位置。

搜索到的最右边子串的位置,如果只搜索到一个或没有搜索到子串,则和find()是等价的。

  S.index(sub[, start[, end]]):与find()一样,不同点在于当找不到子串时,抛出ValueError错误。

  S.rindex(sub[, start[, end]])

 

5、替换

  5.1 replace

    S.replace(odd,new[,count]):将字符串中的子串old替换为new字符串,如果给定count,则表示只替换前count个old子串。如果S中搜索不到子串old,则无法替换,直接返回字符串S(不创建新字符串对象)。

  5.2 expandtabs

   S.expandtabs(N);将字符串S中的\t替换为一定数量的空格。默认N=8。在替换"\t"为空格时,会减掉"\t"前面的字符数量。如果"\t"的前面正好没有字符,则直接将"\t"替换为N个空格。

  

5.3 translate和maketrans

  S.translate(table):对字符串S中的每个字符进行映射

生成一个字符----映射的table

 

6、替换

和rpartition

搜索字符串S中的子串sep,并从sep处对S进行分割,最后返回一个包含3元素的元组:sep左边的部分是元组的第一个元素,sep自身是元组的二个元素,sep右边是元组的第三个元素。

partition(sep)从左边第一个sep进行分割,rpartition(sep)从右边第一个sep进行分割。

 

 6.2 split、rsplit和splitlines

根据sep对S进行分割,maxsplit用于指定分割次数,如果不指定maxsplit或者给定值为"-1",则会从左向右搜索并且每遇到sep一次就分割直到搜索完字符串。

S.rsplit(sep=None, maxsplit=-1):从右边向左边分割
S.splitlines([keepends=True]):用来分割换行符。常见的是\n、\r、\r\n

 

7、Join

将可迭代对象中的元素使用S连接起来。

 

8、修剪 strip,lstrip,rstrip

分别是移除左右两边、左边、右边的字符char。如果不指定chars或者指定为None,则默认移除空白(空格、制表符、换行符)。