Python中字符串有哪些常用操作?纯干货超详细


Python中字符串有哪些常用操作?纯干货超详细文章插图
在Python中字符串的表达方式有四种

  • 一对单引号
  • 一对双引号
  • 一对三个单引号
  • 一对三个双引号
这里多说一句 , 小编是一名python开发工程师 , 这里有我自己整理的一套最新的python系统学习教程 , 包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等 。 想要这些资料的可以关注小编 , 并在后台私信小编:“01”即可领取 。
a = 'abc'b= "abc"c = '''abc'''d = """abc"""print(type(a)) # print(type(b)) # print(type(c)) # print(type(d)) # 复制代码单双引号混合使用a = "LiMing say 'nice to meet you'"复制代码同样也可以通过转义的方式不用在里面写双引号
a = "LiMing say \"nice to meet you\""print(a)复制代码总结就是需要外面用了双引号 , 里面需要引用的语句可以用单引号括起来 , 反之亦然 。
通常情况根据个人喜好 , 基本都是使用单引号或者双引号 。 有些特殊情况 , 比如需要表示多行时 , 可以选择三个单(双)引号 , 并且无序用\进行转移 , 可直接使用单引号和双引号 。
a = '''My Name is 阿喵 ,Let's say 'Hello''''print(a)复制代码字符串的下标和切换
Python中字符串有哪些常用操作?纯干货超详细文章插图
下标:字符串是一个个字符拼接而成 , 下标可以理解为每个字符的编号 , 从0开始依次类推 。
作用:通过下标去操作字符串中的元素
# H的下标为0 ,e的下标为1 ..依次类推a = 'HelloWorld'# 获取字符串a中下标为4的元素print(a[4])# o下标为4的元素为o复制代码修改字符串中的元素是不是可以直接赋值呢? 例如:
a = 'HelloWorld'a[4] = 'k'print(a)复制代码上面的代码运行之后发现报错 。
TypeError: 'str' object does not support item assignment复制代码原因是因为: 字符串一旦创建之后 , 里面的元素是不可以修改的 。
所以字符串是无法直接进行修改的 。
字符串运算字符串运算中用到了+ 、*、>、<、!= 、= 等逻辑运算符 。
字符串的相加操作 , 也可以理解为拼接操作 。 例如:
a = 'Hello' + ' World'print(a) # Hello World# 也可以写成a = 'Hello' ' World'print(a) # Hello World复制代码字符串的乘法操作, 可以理解为克隆操作 , 字符串只能与整数(n)想乘,代表克隆n个字符串 。
a = 'a'print(a * 2) # aab = '-'print(b * 10) # ----------复制代码切片字符串的切片也称为字符串截取 。所有操作都是通过字符串的下标进行操作的 。
用法:字符串[开始索引(start):结束索引(end):步长(step)(默认1)]
步长(step):每隔(step-1)个取一个元素 , 当step为负数时 , 代表从右向左取元素 ,
a = 'abcdefghijklmn'# 从下标1开始 到4结束 进行切片(包括1 , 不包括4 , 即左开又闭)print(a[1:4]) # bcdprint(a[1:8]) # bcdefghprint(a[1:8:2])# 步长为2 ,结果:bdfh# 当补偿为负数时 , 代表逆向截取 。初始从坐标8开始 , 每隔一个元素取一个值 , 到下标为1时结束print(a[8:1:-2]) # igec复制代码字符串的常用操作这里以代码+注释的方式 , 展示几个常用的字符串操作 。
a = ' Hello World '# 获取字符串的长度print(len(a)) # 13# 删除字符串两边的空格print(a.strip()) # Hello World# 删除左边的空格print(a.lstrip()) # Hello World (只删除左边的空格)# 删除字符串右边的空格print(a.rstrip()) #Hello World# 通过指定连接符 链接字符串lst = ['LiMing', 'Tom']print('***'.join(lst)) # LiMing***Tom# 首字母大写m = 'hello world'print(m.capitalize()) # Hello world# 返回标题化字符串 , 即每个单词首字母大写print(m.title()) # Hello World# 打印输出字符 , 将字符串放在中间,# center(width, fillchar)width: 字符串的总长度 ,fillchar:填充字符print(a.center(20, '*')) # *** Hello World ****# 是否以xxx开头n = 'Hello'print(n.startswith('H')) # True# 是否以xxx结尾print(n.endswith('o')) # True# 字符串是全纯英文字符print(a.isalpha()) # False , 因为字符串a中 ' Hello World ' 有空格 , 因此返回Falseprint('HelloWorld'.isalpha()) #True# 判断字符串中是否全部为数字或者英文print('Hello2World'.isalnum()) # Trueprint('123'.isalnum()) # Trueprint('abc返回字符串最后一次出现的位置 , 如果没有匹配项则返回-1。 rindex 同理