操作字符串的常用函数

函数 描述(返回值)

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)")  #
exec("print(2)") #

eval(str)、exec(str)都是执行字符串中的python代码,只不过exec()功能更加强大。

最新文章

  1. JavaScript检测对象的类属性
  2. 【整理】认识MSG结构体
  3. Mac系统 安装SVN
  4. UVALive 7146 Defeat the Enemy(贪心+STL)(2014 Asia Shanghai Regional Contest)
  5. SQL --Chapter 04 数据更新
  6. UIBarButtonItem-添加自定义Left或者Right按钮 <总结>
  7. ext之关键字mixins、statics、require
  8. mysql外键设置选项
  9. Cannot execute request on any known server或DiscoveryClient_UNKNOWN/DESKTOP-MQ8D0C9:8761
  10. opencart3修改产品页模板没有效果的原因排查
  11. Vue ElementUI 的使用
  12. Python基础3(2017-07-20)
  13. css后代选择器
  14. react组件在项目中的应用(基础知识)
  15. cf807 c 二分好题
  16. [daily][archlinux][mdadm][RAID] 软RAID
  17. 脱壳_00_压缩壳_ASPACK
  18. 使用 requests 发送 POST 请求
  19. 【LOJ】#2062. 「HAOI2016」地图
  20. 记录一次软件Bug发生的过程

热门文章

  1. Browser cannot find PAC because wpad hostname cannot be resolved
  2. ubunt 文件permission denied问题的解决
  3. this指向问题(改变它的指向)
  4. 请描述一下cookies、sessionStorage、localStorage、session四者的区别?
  5. Generator生成器函数执行过程的理解
  6. webpack 配置多入口文件,输出多出口文件
  7. 我对网络IO的理解
  8. git filter-branch之后撤销到原来状态
  9. c# 创建socket连接辅助类
  10. FusionInsight大数据开发---Redis应用开发