Python字符串
Posted ffxqc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字符串相关的知识,希望对你有一定的参考价值。
1.replace替换
#replace实现字符串替换 a=\'sjbfnjajjkdgbnv\' a=a.replace(\'f\',\'里\') print(a)
out:sjb里njajjkdgbnv
- 整个过程,实际是创建了新的字符串对象,并指向了变量a,并非改变了以前的字符串
2.split分割和join合并
- split基于指定分隔符将字符串分割为多个子字符串(存储到列表里),若不指定分隔符,则默认使用空白符
#split分割 a=\'it is a cute cat\' print(a.split()) print(a.split(\'is\')) out: [\'it\', \'is\', \'a\', \'cute\', \'cat\'] [\'it \', \' a cute cat\'
- join作用和split作用相反,将一系列子字符串连接起来
#join合并 a=[\'y\',\'yx\',\'yxz\'] print(\'*\'.join(a)) out: y*yx*yxz
- 使用‘+’字符串拼接符,会生成新的字符串对象,join函数在拼接前会计算所有字符串的长度,然后注意拷贝,仅新建一次对
3.字符串驻留机制
字符串驻留:仅保存一份相同且不可变的字符串的方法,不同的值被放在字符串驻留池中,对于符合标识符规则的字符串(仅包含下划线、字母、数字)会启用字符串驻留机制
4.字符串常用方法
常用查找方法
a=\'我是一名大学生,希望在毕业前能够熟练使用python,这并不是一个伟大的梦想,我想我可以实现\' print(len(a)) print(a.startswith(\'我是\'))#以指定字符串开头 print(a.endswith(\'熟练使用python\')) print(a.find(\'一\'))#第一次出现指定字符串的位置 print(a.rfind(\'一\'))#最后一次出现指定字符串的位置 print(a.count(\'大\'))#指定字符出现了几次 print(a.isalnum())#所有字符全是字母或数字
去除首尾信息
print(\'*s*x*t*\'.strip(\'*\'))#去除首尾指定字符 print(\'*s*x*t*\'.lstrip(\'*\'))#去除开头指定字符 print(\'*s*x*t*\'.rstrip(\'*\'))#去除尾部指定字符 print(\' s*x*t \'.strip())#去除首尾空格
大小写转换
a=\'xiaoming love studying,LOVE PYTHON\' print(a.capitalize())#产生新的字符串,首字母大写 print(a.title())#产生新的字符串,每个单词都首字母大写 print(a.upper())#产生新的字符串,所有字符全部转成大写 print(a.lower())#产生新的字符串,所有字符全部转成小写 print(a.swapcase())#产生新的字符串,所有字符大小写转换 out: Xiaoming love studying,love python Xiaoming Love Studying,Love Python XIAOMING LOVE STUDYING,LOVE PYTHON xiaoming love studying,love python XIAOMING LOVE STUDYING,love python
格式排版
a=\'pyt\' print(a.center(10,\'*\'))#\'pyt’居中,剩下的‘*’号填充 print(a.center(10))#\'pyt\'居中,剩下的空格填充 print(a.ljust(10,\'*\'))#‘pyt\'左对齐,剩下的’*\'号填充 out: ***pyt**** pyt pyt*******
其他方法
isalnum()#是否字母或数字 isalpha()#检测字符串是否只有字母组成(含汉字) isdigit()#检测字符串是否只有数字组成 isspace()#检测是否为空白键 isupper()#是否为大写字母 islower()#是否为小写字母
5.字符串格式化
format()基本用法
通过索引/参数名直接映射参数值,实现对字符串的格式化
a="我的名字是:0,年龄是1" print(a.format(\'小明\',18)) b="我的名字是name,年龄是age" print(b.format(age=20,name=\'小明\')) out: 我的名字是:小明,年龄是18 我的名字是小明,年龄是20
填充和对齐
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:后面带填充的字符,只能是一个字符,不指定默认用空格填充
print("我是name,我的年龄是age:!^8".format(name=\'小明\',age=18)) out: 我是小明,我的年龄是!!!18!!!
数字格式化
浮点数通过f,整数通过d进行需要的格式化
a="0的值是1:.2f" print(a.format(\'圆周率\',3.1415926)) out: 圆周率的值是3.14
6.可变字符串
Python中,字符串属于不可变对象,不支持原地修改,若要修改,可使用io.StringIO对象或array模块
import io s="hello World" sio=io.StringIO(s)#可变的对象 print(sio.seek(1)) sio.write(\'v\') print(sio.getvalue()) out: 1 hvllo World
以上是关于Python字符串的主要内容,如果未能解决你的问题,请参考以下文章