字符串处理方法

1. str.capitalize: 将字符串首字母大写

str.capitalize('abc')
'Abc'

2. str.replace(old,new,[,count]): 替换字符,count定义替换的次数,默认是全替换

str1 = 'hello,world'
str1.replace('o','O')
'hellO,wOrld'
str1.replace('o','O',1)         # 替换一次
'hellO,world'

3. str.split([sep,[,maxsplit]): 返回一个列表,sep指定分隔符,默认是用空格切,maxsplit表示最大切割几次

str1 = 'hello world\t my \n name'
str1.split()
['hello', 'world', 'my', 'name']
str1.split(' ',3)
['hello', 'world\t', 'my', '\n name']

4. str.join(): 返回一个字符串,连接可迭代,元素分隔符''可指定

'-'.join([str(i) for i in xrange(10)])
'0-1-2-3-4-5-6-7-8-9'
'ab'.join('xyz')
'xabyabz'

5. str.strip([,chars]): 去除字符串前后的空格,如果指定字符则删除行首行尾指定的字符

' b , c '.strip()
'b , c'
'a b c a '.strip('a')
' b c '

6. str.count(str,[,start,end]): 统计字符串指定的字符数量

'abcdabcdabcd'.count('c',1,-1)
3
‘abc’('a')
1

str1.count('\n'):表示有多少个回车即行数。查看字符串有多少行

str1.find('str'):查找字符第一次出现在什么位置,rfind则表示最后一次出现在什么位置str1.lower():把所有字符都变成小写,islower返回的是bool值,如果都是小写字母返回True

str1.upper():把所有字符都变成大写,isupper返回的是bool值,如果都是大写字母返回True

str1.isalpha():bool值,字符串如果都是字母的话返回True

str1.isdigit():bool值,字符串如果都是数字的话返回True

str1.isspace():bool值,字符串如果都是空格,空,换行符,制表符的话返回True

str1.istitle():bool值,字符串只有第一个字符是大写,            

str1,isalnum():bool值,字符串如果只有数字和字母,返回True

str1.replace('word ', 'word '):替换的作用,由于字符串不可变对象,替换一次不会修改原字符串

str1.startswith('word'):bool值,表示字符串开头是否是word.与之相反的是endswith

str1.split():每个单词都写入列表。splitlines()把每行写入列表,可以查看有多少行

'1'.zfill(2):格式化数字输出,返回为01,自动补全

str1.center(100):格式化输出,居中显示,ljust居左显示,rjust居右显示


string模块:

1. string.lowercase: 打印26个小写英文字母

2. string.uppercase: 打印26个大写英文字母

3. string.lower(str): 将字符串全部转换为小写

4. string.upper(str): 将字符串全部转换为大写

5. string.capitalize(str): 将第一个字符串大写

6. string.replace(str,old,new,[,count]): 将字符串替换,默认是全替


序列处理函数:

1:filter(function or None, sequence) -> list, tuple, or string

def f(x)
    if x % 2 == 0:
        return True
        
filter(f,xrange(10))
[0, 2, 4, 6, 8]

2: zip(seq1,seq2,[...]) -> [(seq1[0],seq2[0],..),(seq1[1],seq[1],....)

l1 = (1,2,3) ; l2 = ['a','b']
zip(l1,l2)
[(1, 'a'), (2, 'c')]