String模块中的常量:
string.digits:数字0~9
string.letters:所有字母(大小写)
string.lowercase:所有小写字母
string.printable:可打印字符的字符串
string.punctuation:所有标点
string.uppercase:所有大写字母
[html] view plain copy
- >>> import string
- >>> string.digits
- ‘0123456789‘
- >>> string.letters
- ‘ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz‘
- >>> string.lowercase
- ‘abcdefghijklmnopqrstuvwxyz‘
- >>> string.printable
- ‘0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\‘()*+,-./:;<=>[email protected][\\]^_`{|}~ \t\n\r\x0b\x0c‘
- >>> string.punctuation
- ‘!"#$%&\‘()*+,-./:;<=>[email protected][\\]^_`{|}~‘
- >>> string.uppercase
- ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ‘
1、find函数
在一个较长的字符串中查询子字符串,返回子串所在位置最左端索引,没有找到返回-1[html] view plain copy
- >>> title = "Monty Python‘s Flying Circus"
- >>> title.find(‘Monty‘)
- 0
- >>> title.find(‘monty‘)
- -1
可以选择起始点和结束点
[html] view plain copy
- >>> title.find(‘Python‘)
- 6
- >>> title.find(‘Python‘, 3)
- 6
- >>> title.find(‘Python‘, 3, 10)
- -1
2、join函数
在队列中添加元素(只能操作于字符串,返回一个修改后的字符串,但是原字符串不改变)[html] view plain copy
- >>> seq = [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
- >>> sep = ‘+‘
- >>> sep.join(seq)
- ‘1+2+3+4+5‘
- >>> seq
- [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
- >>> dirs = ‘‘, ‘usr‘, ‘bin‘, ‘env‘
- >>> ‘/‘.join(dirs)
- ‘/usr/bin/env‘
- >>> print ‘C:‘ + ‘\\‘.join(dirs)
- C:\usr\bin\env
逆方法:split函数
将字符串分割成序列,返回该序列,原字符串不改变
[html] view plain copy
- >>> word = ‘1+2+3+4+5‘
- >>> word.split(‘+‘)
- [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]
- >>> word
- ‘1+2+3+4+5‘
3、lower函数
返回字符串的小写字母版
[html] view plain copy
- >>> ‘fafDAWdfaweDWED‘.lower()
- ‘fafdawdfawedwed‘
扩展:
title函数:首字母大写,其他小写
[html] view plain copy
- >>> "that‘s all folks".title()
- "That‘S All Folks"
capwords函数:功能同上,为string模块中函数
[html] view plain copy
- >>> import string
- >>> string.capwords("that‘s all folks")
- "That‘s All Folks"
4、replace函数
返回某字符串所有匹配项均被替换之后得到的字符串,原字符串不改变[html] view plain copy
- >>> word = ‘this is a test‘
- >>> word.replace(‘is‘, ‘eez‘)
- ‘theez eez a test‘
- >>> word
- ‘this is a test‘
maketrans函数:功能同上,string中的转换表,共有256个项目,函数接受2个等长的字符串,第一个字符串中的每个字符都用第二个字符串中相应位置的字符来进行替换
maketrans类似于一种规则,经常与translate结合,以完成一些普通函数无法完成的字符串替换
[html] view plain copy
- >>> from string import maketrans
- >>> table = maketrans(‘cs‘, ‘kz‘)
- >>> len(table)
- 256
- >>> table[97:123]
- ‘abkdefghijklmnopqrztuvwxyz‘
- >>> maketrans(‘‘,‘‘)[97:123]
- ‘abcdefghijklmnopqrstuvwxyz‘
translate函数:功能同上,但是只能处理单个字符,有2个参数,第一个是替换,第二个是删除
例:table承继maketrans中的table
[html] view plain copy
- >>> ‘this is an incredible test‘.translate(table)
- ‘thiz iz an inkredible tezt‘
- >>> ‘this is an incredible test‘.translate(table, ‘ ‘)
- ‘thizizaninkredibletezt‘
5、strip函数
去除两侧(不包括内部)空格的字符串,原序列不变[html] view plain copy
- >>> word = ‘ this is test ‘
- >>> word.strip()
- ‘this is test‘
- >>> word
- ‘ this is test ‘
可在strip()加入参数,以去除想要去掉的指定字符
[html] view plain copy
- >>> ‘*** SPAM * for * everyone!!! ***‘.strip(‘*‘)
- ‘ SPAM * for * everyone!!! ‘
- >>> ‘*** SPAM * for * everyone!!! ***‘.strip(‘* ‘)
- ‘SPAM * for * everyone!!!‘
- >>> ‘*** SPAM * for * everyone!!! ***‘.strip(‘* !‘)
- ‘SPAM * for * everyone‘