本文共 2133 字,大约阅读时间需要 7 分钟。
所有标准的序列操作(索引,分片,乘法,判断成员资格,求长度,最大值,最小值)对字符串都是同样适用的。
3.1 字符串是不可变的
在Python中,字符串和元组一样,都是不可变的,即一经创建就不可更改它。
>>> #以下的分片赋值是不合法的
>>> website = 'http://www.python.org'
>>> website[-3:] = 'com'
Traceback (most recent call last):
File "", line 1, in
website[-3:] = 'com'
TypeError: 'str' object does not support item assignment
3.2 字符串格式化
语法: format % values
字符串格式化使用字符串格式化操作符%,在%的左边为格式化字符串,即format,在%的右边为希望格式化的值,即values
>>> format = "Hello,%s.%s enough for ya"
>>> values = ('world','Hot')
>>> print format % values
Hello,world.Hot enough for ya
>>> format = 'Pi with three decimals:%.3f'
>>> from math import pi
>>> print format % pi
Pi with three decimals:3.142
3.3 字符串常用方法
>>> #1.find:字符串中查找子字符串。
>>> #返回值:若找到了,返回子字符串坐在位置的最左端索引。若没找到,返回-1.
>>>
>>> title = "Monty Python's Flying Circus"
>>> title.find('Monty')
0
>>> title.find('Python')
6
>>> title.find('Zirquss')
-1
>>> #指定起始点和结束点(含起始点,但不含结束点)
>>> subject = "$$$ Get rich now!!! $$$"
>>> subject.find('$$$')
0
>>> subject.find('$$$',1)
20
>>> subject.find('!!!')
16
>>> subject.find('!!!',0,16)
-1
>>> #2.join:split方法的逆方法,用来在队列中添加元素
>>> seq = ['1','2','3','4','5']
>>> sep = '+'
>>> sep.join(seq)
'1+2+3+4+5'
>>> dirs = '','usr','bin','env'
>>> '/'.join(dirs)
'/usr/bin/env'
>>> #3.lower:返回字符串的小写字母版
>>> 'Hello World'.lower()
'hello world'
>>> #4.replace:字符串中的所有匹配项均被替换
>>> 'This is a test'.replace('is','eez')
'Theez eez a test'
>>> #5.split:join的逆方法,用来将字符串分割成序列
>>> '1+2+3+4+5'.split('+')
['1', '2', '3', '4', '5']
>>> '/usr/bin/env'.split('/')
['', 'usr', 'bin', 'env']
>>> 'Using the default'.split()
['Using', 'the', 'default']
>>> #注:如果不提供任何分隔符,把所有的空格作为分隔符(空格,制表,换行)
>>> #6.strip:删除两侧的空格(不包含内部)
>>> ' test '.strip()
'test'
>>> #也可以指定需要删除的字符
>>> '***SPAM * for * everyone!!! ***'.strip(' *!')
'SPAM * for * everyone'
>>> #7.translate:与replace方法类似,可以替换字符串中的某些部分。
>>> #与replace不同的是,translate只处理单个字符,优势在于同时进行多个替换
>>> from string import maketrans
>>> table = maketrans('cs','kz')#转换表,用k替换c,用z替换s
>>> 'this is a incredible test'.translate(table)
'thiz iz a inkredible tezt'
>>>
>>> #translate的第二个参数可选,用来指定需要删除的字符
>>> 'this is a incredible test'.translate(table,' ')
'thizizainkredibletezt'
转载地址:https://blog.csdn.net/weixin_35600779/article/details/114454421 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!