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字符串的主要内容,如果未能解决你的问题,请参考以下文章

Python学习 Day5 Python3 字符串

python008 Python3 字符串

Python字符串

Python 字符串

Python --------字符串

Python 字符串