Python 字符串常用函数
操作字符串的常用函数
| 函数 | 描述(返回值) | 
|---|---|
| str.capitalize() | 将字符串的第一个字符大写 | 
| str.title() | 返回标题化的字符串,即每个单词的首字母都大写 | 
| str.upper() | 全大写 | 
| str.lower() | 全小写 | 
| 
 | 
 | 
| len(str) | 返回字符串的长度。用法与其他不同。 | 
| str.count(substring[, start[,end]]) | 统计字符串里某个子串出现的次数。三个参数:搜索的子串、搜索的开始位置、结束位置。后2个可选,缺省时默认为0、-1 可选参数为在字符串搜索的开始与结束位置 | 
| 
 | 
 | 
| str.center(width[, fillchar]) | 返回一个指定宽度 width 居中的字符串,fillchar 为填充的字符(只能是一个字符,不能是字符串,下2个同),默认为空格。 | 
| ljust(width[, fillchar]) | 返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。 | 
| rjust(width[, fillchar]) | 返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串 | 
| 
 | 
 | 
| lstrip([substring]) | 删掉字符串开头的子串substring。开头的substring才会被删除。参数缺省时默认为空格。 | 
| rstrip([substring]) | 删掉字符串开头的子串substring。开头的substring才会被删除。参数缺省时默认为空格。 | 
| strip([substring]) | lstrip()+rstrip() | 
| 
 | 
 | 
| str.encode("UTF-8") | 以指定字符集编码,返回编码后的字符串 | 
| str.decode("UTF-8") | 以指定字符集解码,返回解码后的字符串。需要在之前使用encode()编码,才能使用decode() | 
| 
 | 
 | 
| str.startswith(substring[,satrt[,end]]) | 检查字符串是否是以指定子字符串 substr 开头,返回值是bool类型。三个参数:搜索的子串、搜索的开始位置、结束位置。后2个可选,缺省时默认为0、-1 | 
| endswith(substring[, start[, end]]) | 判断字符串是否以指定子串结尾 | 
| 
 | 
 | 
| str.find(substring[, start[, end]]) | 在str中查找指定子串,找到就返回子串的位置(索引),找不到就返回-1 | 
| str.rfind(substring[, start[, end]]) | 同find(),只不过是从右向左找 | 
| str.index(substring[, start[, end]]) | 同find(),只不过找不到时是报错(error) | 
| str.rfind(substring[, start[, end]]) | 从右向左找 | 
| 
 | 
 | 
| str.replace(oldSub, newSub [, maxCount]) | 替换子串,count指5定最大替换次。比如max=5,则替换5次,str中不足5个匹配时,有多少个就替换多少个。 | 
| str.expandtabs(1) | 把字符串中的\t替换为指定个数的空格,\t的默认空格数是 8 ,参数指定空格数,缺省时默认为8(不替换) | 
| 
 | 
 | 
| str.split([substring[, count]]) | 将字符串切割为字符串列表,返回字符串列表。substring指定分隔符(默认为空格,一个或多个空格都行),count指定切割次数(默认为-1,全部切完)。切一刀会得到2个子串(后面作为一个整体)。 | 
| 连接符.join(seq) | 以指定字符串作为连接符,将 seq 中所有的元素连接为一个字符串,并返回这个字符串。seq必须为字符串序列,否则报错。 | 
说明
- 
以上函数不用导入模块,直接使用即可。 
- 返回的均是副本,原串(变量)不会改变
- 都是通过 字符串.方法名() 的形式调用的,len(str)除外。
常见单词
- substring 子串
- sequence 序列
- strip 剥夺、修剪、去除
- join 连接、加入、结合
strip()的使用:
str = "hellohello world" print(str.lstrip("hello")) # 开头的2个hello都会被删除 str="hello hello" print(str.lstrip("hello")) #只会删除第一个hello str="!hello hello" print(str.lstrip("hello")) #hello不是字符串开头,所以不会删除 """ l/rstrip(),先判断substring是不是字符串的开头/结尾,是才删除(多个连着时,会删除多个) strip()相当于lstrip()+rstrip(),只删除开头、结尾处的,并不是全部删除。 """
split()的使用:
str = "hello world" print(str.split("o")) #['hell', ' w', 'rld'] print(str.split("o",1)) #['hell', ' world'] 一刀2段,后面作为一个整体
join()的使用:
seq=["hello","world","ok"] print(" ".join(seq)) #hello world ok 以空格连接 print("**".join(seq)) #hello**world**ok 以**连接
eval()、exec()的使用:
eval("print(1)") #1 exec("print(2)") #2
eval(str)、exec(str)都是执行字符串中的python代码,只不过exec()功能更加强大。
 
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号