字符串格式化
实例:
>>> 'Price of eggs: $%d' %42
'Price of eggs: $42'
>>> 'Hexadcimal price of eggs: %x' %42 # 16进制
'Hexadcimal price of eggs: 2a'
>>> from math import pi
>>> 'Pi: %f...' %pi
'Pi: 3.141593...'
>>> 'Very inexact estimate of pi: %i' %pi # 和d效果一样
'Very inexact estimate of pi: 3'
>>> 'Using str: %s' %42L
'Using str: 42'
>>> 'Using repr: %r' %42L
'Using repr: 42L'
----------------------------------------------------------------------------------------------
>>> '%10f' %pi # 字段宽 10
' 3.141593'
>>> '%10.2f' %pi # 字段宽 10,精度 2
' 3.14'
>>> '%.2f' %pi # 精度 2
'3.14'
>>> '%.5s' % 'Guido van Rossum'
'Guido'
----------------------------------------------------------------------------------------------
>>> '%010.2f' %pi
'0000003.14' #0填充
>>> '%-10.2f' %pi
'3.14 ' #左对齐
>>> '%10.2f' %pi
' 3.14' #默认右对齐
字符串方法
所有标准的序列操作(索引、分片、乘法、判断成员资格、求长度、取最小值和最大值)对字符串同样适用,前面已经讲述的这些操作。但是,请注意字符串都是不可变的。
1、find
find 方法可以在一个较长的字符串中查找子字符串。它返回子串所在位置的最左端索引。如果没有找到则返回-1.
>>> 'with a
moo-moo here. and a moo-moo ther'.find('moo')
7
>>> title = "Monty Pyhon's Flying Circus"
>>> title.find('Monty')
0
>>> title.find('Python')
-1
2、join
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'
>>> print 'C:' + '\'.join(dirs)
C:usrinenv
3、lower
lower 方法返回字符串的小写字母版。
如果想要编写“不区分大小写”的代码的话,那么这个方法就派上用场了-----代码会忽略大小写状态。
>>> 'Trondheim
Hammer Dance'.lower()
'trondheim hammer dance'
4、replace
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
strip 方法返回去除两侧(不包含内部)空格的字符串:
>>> ' internal white space is kept '.strip()
'internal white space is kept'
多行字符串: