python中字符串的几个方法介绍

字符串格式化

>>> '%s plus %s equals %s' % (1,1,2)
'1 plus 1 equals 2'

字段的宽度和精度

*字段宽度是转换后的值所保留的最小字符个数,精度(对于数字)是包含的小数位数,或者(对于字符)转换后的值所能包含的最大字符数

>>> from math import pi
>>> '%10f' % pi
'  3.141593'
>>> from math import pi
>>> '%10f' % pi  #字段宽10
'  3.141593'
>>> '%10.2f' % pi #字段宽10,精度2
'      3.14'
>>> '%.2f' % pi #精度2
'3.14'
>>> '%.5s' % 'My name is ningsi'
'My na'
>>> '%.*s' % (5,'My name is ningsi')
'My na'

符号、对齐和0填充

>>> '%010.2f' % pi #用0填充
'0000003.14'    
>>> '%-10.2f' % pi #左对齐
'3.14      '
>>> print ('% 5d' % 10)+'
'+('%5d' % -10)
   10
  -10
>>> print ('%+5d' % 10)+'
'+('%+5d' % -10)
  +10
  -10

字符串的方法

find 查找子字符串

>>> N='ning si de shu de'
>>> N.find('de')
8
>>> N.find('dee')
-1
>>> N.find('de',9,16) #范围包含第一个索引不包含第二个
-1

join 是split方法的逆方法

>>> s=['1','2','3','4']
>>> q.join(s)
'1+2+3+4'
>>> p='','usr','bin','env'
>>> '/'.join(p)
'/usr/bin/env'>>> print 'C:'+'\'.join(p)
C:usrinenv

lower 返回字符串的小写字母版

>>> 'My name is ningsideshu'.lower()
'my name is ningsideshu'
>>> if 'name' in ['my','Name','is']:print 'Found it!'

>>> if 'my' in ['my','Name','is']:print 'Found it!'

Found it!

replace 替换

>>> 'This is a pen'.replace('pen','apple')
'This is a apple'

split 将字符串分割成序列

>>> '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']

strip 返回去除两侧空格(或指定字符)的字符串  (另外:lstrip,rstrip)

>>> ' My name is Nsds  '.strip()
'My name is Nsds'
>>> ' *My name is Nsds * '.strip(' *')
'My name is Nsds'

translate 替换,与replace不同的是,可以替换单个字符(字符串中的某些部分)

>>> from string import maketrans
>>> N=maketrans('ns','mf')
>>> 'My name is ningsideshu'.translate(N)
'My mame if mimgfidefhu'
>>> 'My name is ningsideshu'.translate(N,'M') #第二个参数指定需要删除的字符
'y mame if mimgfidefhu'

模版字符串 

>>> from string import Template
>>> s=Template('$x. name $x!')
>>> s.substitute(x='hello')
'hello. name hello!'
>>> s=Template("It't ${x}tastic!")
>>> s.substitute(x='slurm')
"It't slurmtastic!"
>>> s=Template("It't ${x}tastic${y}!")
>>> s.substitute(x='slurm',y='a')
"It't slurmtastica!"
>>> s=Template('A $thing must never $action.') 
>>> d={}
>>> d['thing']='gentleman'
>>> d['action']='show his socks'
>>> s.substitute(d)
'A gentleman must never show his socks.'
原文地址:https://www.cnblogs.com/nsds/p/6429249.html