第三章 使用字符串

来源:互联网 发布:流程优化目的 编辑:程序博客网 时间:2024/06/14 20:58

3.1基本字符串操作

所有标准的序列操作(索引、分片、加、乘、成员资格、长度、最大最小值)

3.2字符串格式化:精简版

>>> format="%s,%s!" 

>>>values=("hello","world")

>>> print format % values

hello,world!

 

只有元组和字典可以格式一个以上值

 

模板字符串:

>>> from stringimport Template

>>>s=Template('${x}ello,${y}orld!')

>>>s.substitute(x='h',y='w')

'hello,world!'

使用字典,多值替换

>>>s=Template('${x}ello,${y}orld!')

>>> d={}

>>> d['x']='h'

>>> d['y']='w'

>>> s.substitute(d)

'hello,world!'

3.3字符串格式化:完整版

%字符:标记转换说明符

⑵转换标志:-表示左对齐;+ 表示加正负号;“”正数之前保留空格;0表示位数不够以0填充。

⑶最小字段宽度

⑷点(.)后跟精度值

⑸转换类型

3.3.1简单转换
3.3.2字段宽度和精度

>>>from math import pi

>>>'%10f' % pi

'  3.141593'

>>>'%5.1f' % pi

'  3.1'

 

>>> '%.*f' % (2,pi)  #宽度从元组中读出

'3.14'

 

3.3.3符号、对齐和用0填充

>>> '%010.2f' % pi

'0000003.14'

 

>>> '%-10.2f' % pi

'3.14      '

 

>>> '%+-10.2f' % pi

'+3.14

 

3.4字符串方法

字符串未死:例如maketrans

一些字符串常量

string.digits:包含数字0~9

string.letters:所有大小写字母

等等

 

3.4.1 find

返回子串所在位置的最左边的索引。如果没有的话则返回-1

3.4.2 join

Split的逆方法:

>>>seq=['1','2','3']

>>>sep='+'

>>>sep.join(seq)

'1+2+3'

 

需要被连接的元素必须是字符串

3.4.3 lower

返回字符串的小写字母版

Title:首字母大写(标题)

Capword

 

3.4.4 replace

替换所匹配的字符串

 

3.4.5 split

字符串分割成序列

>>>'1+2+3+4'.split('+')

['1','2', '3', '4']

3.4.6 strip

去除两侧空格

>>>'   fdsfs   '.split()

['fdsfs']

 

3.4.7 translate

与replace的区别是,此方法只处理单个字符。

maketrans:使用translate之前要创建一张字符替换的对应表,ASCII字符集有256个,一个个对应写出来的话太麻烦,所以是有maketrans可以方便很多。

>>>from string import maketrans

>>>table=maketrans('cs','kz')

>>>table

'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abkdefghijklmnopqrztuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff'

 

创建好表以后就可以用了:.translate(table,’’)  第二个参数可用来删除指定字符。

0 0
原创粉丝点击