标签:
16.isspace() 如果字符串中只包含空格,则返回True,否则返回False
1 >>> s=‘ ‘
2 >>> s.isspace()
3 True
4 >>> s=‘‘
5 >>> s.isspace()
6 False
17.istitle() 如果字符串是标题化(所有单词都是以大写开始,其余字母小写),则返回True,否则False
1 >>> s=‘I Love Cnblog‘
2 >>> s.istitle()
3 True
18.join(sub) 以字符串作为分隔符,插入到sub中所有的字符之间
1 >>> s=‘I Love Cnblog‘
2 >>> s.join(‘bingo‘)
3 ‘bI Love CnblogiI Love CnblognI Love CnbloggI Love Cnblogo‘
记住这里是将字符串插入到sub的所有字符中,而不是将sub插入到字符串中
1 >>> a=[‘i‘,‘love‘,‘cnblog‘]
2 >>>‘ ‘.join(a)
3 ‘i love cnblog‘
4 >>>str(a)
5 "[‘i‘, ‘love‘, ‘cnblog‘]"
join()可以将列表转成字符串,与str()效果是不同的
19.ljust(width[, fillchar]) 返回一个左对齐的字符串,并使用fillchar(非必选,默认为空格)填充至长度为width(必选参数)的新字符串。值得注意的是左对齐并不会把左侧的空格去掉。
Rjust(width[,fillchar]) 右对齐。
1 >>> s=‘i love cnblog‘
2 >>> s.ljust(20)
3 ‘i love cnblog ‘
4 >>> s=‘ i love cnblog‘
5 >>> s.ljust(20)
6 ‘ i love cnblog ‘
20.strip()删除字符串两侧的空格。Lstrip()删除左侧空格,rstrip()删除右侧空格
1 >>> s=‘ i love cnblog ‘
2 >>> s.strip()
3 ‘i love cnblog‘
4 >>> s.lstrip()
5 ‘i love cnblog ‘
6 >>> s.rstrip()
7 ‘ i love cnblog‘
21.partition(sub) 找到子字符串sub,把字符串分成一个3元组(pre_sub,sub,fol_sub),如果字符中不包含sub则返回(‘原字符串‘,‘‘,‘‘)
1 >>> s=‘i love cnblog‘
2 >>> s.partition(‘o‘)
3 (‘i l‘,‘o‘,‘ve cnblog‘)
4 >>> s.partition(‘i‘)
5 (‘‘,‘i‘,‘ love cnblog‘)
22.split(sep=None,maxsplit=-1) 不带参数默认是以空格为分隔符切片字符串,如果maxsplit参数有设置,则仅分隔maxsplit个子字符串,返回切片后的子字符串拼接的列表。
1 >>> s=‘i love cnblog‘
2 >>> s.split(‘ ‘,2)
3 [‘i‘,‘love‘,‘cnblog‘]
4 >>> s.split(‘ ‘,1)
5 [‘i‘,‘love cnblog‘]
6 >>> s.split(‘i‘)
7 [‘‘,‘ love cnblog‘]
这里的参数sep会被切除,如第二行s.split(‘ ‘,2)中spe=‘‘(空格),第6行sep=‘i‘.最后结果中没有‘i‘
23.splitlines(([keepends])) 按照‘\n‘分隔,返回一个包含各行作为元素的列表,如果keepends参数指定且为真,换行符‘\n‘则不包含在返回的列表中,否则有‘\n‘
1 s=‘‘‘i
2 love
3 cnblog
4 ‘‘‘
5 print(s.splitlines())
6 >>>
7 [‘i‘,‘love‘,‘cnblog‘]#未指定keepends
8 print(s.splitlines(1))
9 >>>
10 [‘i\n‘,‘love\n‘,‘cnblog\n‘]#keepens指定,且为真,如果keenpnds=0(非真),则有‘\n‘
但奇怪的一点是并没有发现keenpends的作用,看下面当keenpends不同,结果竟然完全相同,等明白了再来更新!
1 s=‘‘‘i
2 love
3 cnblog
4
5 ‘‘‘
6 print(s.splitlines(1))
7 print(s.splitlines(2))
8 print(s.splitlines(4))
9 print(s.splitlines(5))
10 >>>
11 [‘i\n‘,‘love\n‘,‘cnblog\n‘,‘\n‘]
12 [‘i\n‘,‘love\n‘,‘cnblog\n‘,‘\n‘]
13 [‘i\n‘,‘love\n‘,‘cnblog\n‘,‘\n‘]
14 [‘i\n‘,‘love\n‘,‘cnblog\n‘,‘\n‘]
24.startswith(prefix[,start[,end]]) 检查字符串是否以prefix开头,是则返回True,否则返回False.start,end参数(可选)可以指定范围
1 >>> s=‘i love cnblog‘
2 >>> s.startswith(‘i‘,0,len(s)-1)
3 True
4 >>> s.startswith(‘i‘,0,100)#很明显,python并不检查右边界是否超出
5 True
25.swapcase() 翻转字符串中的大小写
1 >>> s=‘i love cnblog‘
2 >>> s.swapcase()
3 ‘I LOVE CNBLOG‘
26.title() 返回标题化(所有单词都以大写开始,其余字母小写)的字符串。
1 >>> s=‘i love cnblog‘
2 >>> s.title()
3 ‘I Love Cnblog‘
27.translate(table) 根据table的规则(可以由str.maketrans(‘a‘,‘b‘)定制)转换字符串中的字符
1 import string
2
3 in_s ="aeiou"
4 out_s ="12345"
5 trans =str.maketrans(in_s, out_s)
6
7 s="i love cnblog !"
8 print(s.translate(trans))
9 >>>
10 3 l4v2 cnbl4g !
table翻译表必须事先给定,而且必须是有次序的字符串,或者None(没有内容)。没有映射的字符不受影响(None映射到字符),但如果字符映射到None则会删除字符(事实上这里in_s、out_s必须等长,所以实际意思是table参数是否为None)。看下面:(ps:感觉这地方没理解清楚,甚至可能是错误的)
1 import string
2
3 in_s =‘ ‘#空格,没有内容
4 out_s =‘i‘
5 trans =str.maketrans(in_s,out_s)
6
7 s="i love cnblog!"
8 print(s.translate(trans))
9 >>>
10 iiloveicnblog!
1 import string
2
3 in_s =‘i‘
4 out_s =‘ ‘#空格,没有内容
5 trans =str.maketrans(in_s,out_s)
6
7 s="i love cnblog!"
8 print(s.translate(trans))
9 >>>
10 love cnblog!#i被删除了
28.zfill(width) 返回长度为width的字符串,原字符串右对齐,前边用0填充。这里的s是numeric类型的,非digit,即使width<len(s)字符串也不会变短
1 >>> s=‘123‘
2 >>> s.zfill(10)
3 ‘0000000123‘
4 >>> s=‘四‘
5 >>> s.zfill(10)
6 ‘000000000四‘
......为什么onenote到这上边成了这样子
标签:
原文地址:http://www.cnblogs.com/Andy963/p/5075519.html