且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

python中字符串的常用操作

更新时间:2022-09-12 08:45:13

目的:熟练使用不同的容器或函数操作字符串,这里只介绍常用的方法。


环境:windows 7 python 3.5.3  或 ubuntu 16.04 python 3.5.2


情景:初学python接触最多的数据应该就是字符串了,处理最多的也是,熟练一些函数和方法,可以更有效率的完成想要的操作,这里只介绍处理字符串常用的一些方法。


字符串的存储:

这里的储存是更直白的说明,专业的应该是指向吧(指向确实更合理),如果不方便理解所以就暂时理解为储存吧,需要专业解释可以查看官发文档。

类型有:字符、列表、字典、元组、集。

字符串str()这个很常用;

列表list()就是很多的字符有顺序的排列集合;

元组tuple()不可更改的列表集合;

字典dist()无序的带表示的集合;

集set()无值的字典。


以上的值都可以是空的,即空字符串。


下面开始介绍处理方法:

基础:

字符串的连接用加号+:

1
2
3
sa = 'aa'
sb = 'bb'
print(sa + sb)

字符串重复用星号*:

1
2
sc = 'cc'
print(sc * 5)

多一点的字符串输出可以使用字符串格式符处理(私链


常用的:

切片运算符[],这是一对中括号,这个是很常用,也是很重要的入门,字符串、列表、元组都可以用,字典和集是无序的,不能切,只能用索引,也是一对中括号,啊哈哈。

切片格式:对象[何处开始:何处截至:怎么切]

举例:

1
2
sc = 'ricky wrote a sentence.'
print(sc[0:11:1])

输出ricky wrote,解释是从0开始,移动11次,每次跳过1个数,这里有4点:

1)这是一个完整的写法,可以省略部分,写成print(sc[:11];

2)第一个前面是零,所以要从零开始数;

3)截至11理解为从零开始跳11次;

4)每次跳的格数默认是1可不写,也可以是负数,反着跳。

在字符串中每个字节为单位一,列表和元组中每个元素为单位一:

1
2
sd = ['aa''bb''cc']
print(sd[0:2:1])

输出['aa', 'bb'],当省略所有的参数[:]则表格从开始到结束,获取一个完整的,冒号不能省略。

小技巧,使用切片操作反着切就可以得到一个反序的字符串或列表。


索引:

索引也是从零开始的,取出指定位置的值,只需要一个参数,字典的索引就是指示关键字,然后取出对应的值,集没有值。


函数方法:

使用格式是:字符串.函数()

upper(), 字母大写

lower(), 字母小写

isupper(), 是否为大写

islower(), 是否为小写

swapcase(),大小写互换

capitalize(), 首字母大写

rjust(number[, 补齐内容]) 右对齐

ljust(number[, 补齐内容]) 左对齐

center(number[, 补齐内容]) 居中对齐

strip() 删除左右字符,默认为空格换行

rstrip() 删除右边字符,默认为空格换行

lstrip() 删除左边字符,默认为空格换行


扩展:

高效的字符串连接和拆分,join()和split()(私链)

还有一个很强大的方法,用正则表达式(私链)。


注意:处理字符串时一定要注意编码问题(私链)。


















本文转自RickyHuL51CTO博客,原文链接:http://blog.51cto.com/rickyh/1955266 ,如需转载请自行联系原作者