字符串相关操做
字符串链接符号 +
字符串复制操做 例子:‘ * ’ * 20 复制了20个星星
经过指定位置(索引)来获取指定位置的字符 [] 例子 str[1]来获取第二个字符
取片操做[ : ]
[ : ] 获取全部字符
[ 开始位置: ] 从开始位置获取到字符串的结尾
[:结束位置]从字符串的开头街区到字符串结束位置以前(左闭右开 不包含末尾位置的字符)
[ 开始位置; 结束为止 ] 从字符串的开始位置取到结束位置以前(左闭右开 ,不包含末尾位置的字符)
r'字符串'
防止字符串中的转移字符串实现功能, 把转义字符看成普通字符使用
字符串相关函数
注意:如下的str不是模块名称 ,二十一个字符串变量!
capitalize() 首字母大写
格式 : str.capitalize()
返回值:首字母大写的字符串, 仅把整个字符串的第一个字符大写
upper()将全部英文字符变为大写
格式 :str.upper()
返回值:全部英文字符大写的字符串
lower()将全部英文字符变为小写
格式: str.lower()
返回值:全部英文字符小写的字符串
swapcase()大小写互相转换
格式: str.swaocase()
返回值:转换以后的字符串
title()按照标题格式进行大小写转换(每一个单词首字母大写)
格式:str.title()
返回值:返回全部英文单词首字母大写的字符串
len()计算字符串的字符个数,之后也能够用于计算元组列表等序列
格式:len(str)
返回值:整型
count()计算一个字符串中出现指定字符串的次数
格式:str.count(查找的字符串 , 开始位置 , 结束位置)
返回值:整型
find()查找字符串中是否具备指定的字符串,查找不到返回-1
个事故:str.find( 查找的字符串 , 开始位置 , 结束位置)
返回值:第一次出现的位置
index()查找字符串中是否具备指定的字符串,查找不到直接报错
格式:str.index(查找的字符)
返回值:第一次出现的位置
其中 find()和index()功能基本类似
startswith()检测字符串是否以指定的字符串开头
格式:str.startswith( 查找的字符串 , 开始位置 , 结束位置)
返回值:布尔值
endswith()检测字符串是否以指定的字符串结尾
格式:str.endswith(查找的字符串 , 开始位置, 结束位置)
isupper()检测字符串中字母是否都是大写字母
格式:str.isupper()
返回值:布尔值
islower()检测字符串中的字母是否都是小写字母
格式:str.islower()
返回值:布尔值
isalnum()检测一个字符串是否都是有数字或者是否都是由字母组成
格式:str.isalnum()
返回值:布尔值
空字符串返回False
isdigit()检测字符串是否由纯数字字符组成
格式:str.isdigit()
返回值:布尔值
空字符串返回False
isspace()检测字符串是否彻底由空白字符组成
格式:str.isspace()
返回值:布尔值
回车, 换行,缩进,空额均可以看成空白字符,空字符串是False;
istitle()检测字符串是否符合title()的结果,每一个单词首字母大写
格式:str.istitle()
返回值:布尔型
isnumeric()检测字符串是否由纯数字组成
格式: str.isnumeric()
返回值:布尔值
isdecimal()检测字符串是否彻底由十进制字符组成
格式:str.isdecimal()
返回值:布尔值
split()使用指定的字符将字符串拆解成多个字符串
格式:str.split('用于拆解的字符串')
返回值:列表类型
splitliness()使用\n,\r或者\r\n切割字符串
格式:str.splitliness()
返回值:列表类型
join()使用指定的字符串将序列中的内容组成新的字符串
格式:链接字符串.join(序列)
返回值:组成新的字符串
zfill()0填充操做
格式:str.zfill(长度)
返回值,填充0的字符串
填充结果原有内容靠右对齐,前面位数不足使用0来补充,经常使用于数字类型字符串
cente )将字符串进行居中操做,而且在空白处进行填充
格式:str.center(将来字符宽度,空白填充字符)
返回值:新的字符串
ljust()将字符串进行左对齐操做,而且在空白处进行填充
格式:str.ljust(将来字符宽度,空白填充字符)
返回值:新的字符串
rjust()将字符串进行右对齐操做,而且在空白处进行填充
格式:str.rjust(将来字符宽度,空白填充字符)
返回值:新的字符串
lstrip() 去掉字符串左侧的空白
格式: str.lstrip()
返回值:字符串
rstrip()去掉字符串右侧的空白
格式: str.rstrip()
返回值:字符串
strip()去掉字符串两侧的空白
格式: str.strip()
返回值:字符串
replace()字符串替换操做
格式:str.replace(被替换的字符串,替换字符串)
返回值:替换以后的字符串
maketrans()制做一个字符串映射表,为了给translate函数使用
格式:str.maketrans('被替换的字符串' ,'替换字符串')
返回值:字典类型,被替换字符串组成键 , 替换字符串组成值
注意: 两个参数的字符串个数必须一一对应,这里的str不是值字符串
而是真正的str,也能够写空字符串代替str(字符串都是str制做的)
translate()进行字符串翻译操做,相似转换
格式:str.translate(映射表)
返回值:新的字符串
注意:translate用于多字符替换,replace用于长字符串替换
获取全部的空白字符
result = string.whitespace
print(result)
\n \r \t \x0b\0c
获取ascii码的全部字母表(包含大写和小写)
print(string.ascii_letters)
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
获取ascii码中的全部大写字母
print(string.ascii_uppercase)
ABCDEFGHIJKLMNOPQRSTUVWXYZ
获取ascii码中全部的小写字母
print(string.ascii_lowercase)
abcdefghijklmnopqrstuvwxyz
获取ascii码中全部10进制数字字符
print(string.digits)
0123456789
获取八进制全部数字字符
print(string.octdigits)
01234567
获取十六进制的全部数字字符
print(string.hexdigits)
0123456789abcdefABCDEF
打印全部可见字符
print(string.printavle)
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"$%&'()*+,-./:;<=>?@[\]^_`{|}~
打印全部标点符号
print(string.punctuation)
!"$%&'()*+,-./:;<=>?@[\]^_`{|}~
format格式字符串
''' 语法: 它经过{}和:来代替%。 注意:字符串的format函数能够接受无限个参数,位置能够不按顺序,能够不用或者用屡次,不过2.6不能为空{},2.7才能够。 “映射”示例 经过位置 In [1]: '{0},{1}'.format('kzc',18) Out[1]: 'kzc,18' In [2]: '{},{}'.format('kzc',18) Out[2]: 'kzc,18' In [3]: '{1},{0},{1}'.format('kzc',18) Out[3]: '18,kzc,18' 经过关键字参数 In [5]: '{name},{age}'.format(age=18,name='kzc') Out[5]: 'kzc,18' 经过对象属性 class Person: def __init__(self,name,age): self.name,self.age = name,age def __str__(self): return 'This guy is {self.name},is {self.age} old'.format(self=self) In [2]: str(Person('kzc',18)) Out[2]: 'This guy is kzc,is 18 old' 经过下标 In [7]: p=['kzc',18] In [8]: '{0[0]},{0[1]}'.format(p) Out[8]: 'kzc,18' 有了这些便捷的“映射”方式,咱们就有了偷懒利器。基本的Python知识告诉咱们,list和tuple能够经过“打散”成普通参数给函数,而dict能够打散成关键字参数给函数(经过和*)。因此能够轻松的传个list/tuple/dict给format函数。很是灵活。 格式限定符号 它有着丰富的“格式限定符”(语法是花括号{}带冒号:),如: 填充与对齐: 填充常跟对齐一块儿使用 居中 = ^ 左对齐 = < 右对齐 = > 后面带宽度 = :号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充,以下: In [15]: '{:>8}'.format('189') Out[15]: ' 189' In [16]: '{:0>8}'.format('189') Out[16]: '00000189' In [17]: '{:a>8}'.format('189') Out[17]: 'aaaaa189' 精度与类型f: 精度常跟类型f一块儿使用 In [44]: '{:.2f}'.format(321.33345) Out[44]: '321.33' 其中.2表示长度为2的精度,f表示float类型。 其余类型: 主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制。 In [54]: '{:b}'.format(17) Out[54]: '10001' In [55]: '{:d}'.format(17) Out[55]: '17' In [56]: '{:o}'.format(17) Out[56]: '21' In [57]: '{:x}'.format(17) Out[57]: '11' 逗号,还能用来作金额的千位分隔符: In [47]: '{:,}'.format(1234567890) Out[47]: '1,234,567,890' '''