- 占位符% (%f,o,d,c,x,e,i[浮点数去掉小数部分:2.5-->2])
例题: a-97 A-65 0-48
>>> "%d,%c"%(65,65) '65,A' | >>> "%i"%-1.2 '-1 |
2.format函数:
参数的使用:
1.位置参数、命名参数
2.字典格式化字符串
格式控制:
1.{参数:填充+对齐方式(左[默认或<]中[^]右[>])+ 输出长度}: 多用于对文字处理
>>> "{:*^25}".format("python") '*********python**********' | >>> "{0:05}".format(3.14) '03.14' | >>> s="等级考试" >>> y="-" >>> "{0:{1}^{2}}".format(s,y,25) '----------等级考试-----------' |
2.{参数:,.精度+类型}: 类型(e,E,f(浮点数),%(百分号), b(二进制),c(ASCII代码),d(转十进制),o(转八进制),x(转十六进制小写表示),X(转十进制大写表示)):%,f都是默认保留6位 多用于对数字处理
>>> "{0:e},{0:E},{0:.2f},{0:%}".format(3.14) '3.140000e+00,3.140000E+00,3.14,314.000000%' >>> "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(15) '1111,\x0f,15,17,f,F' | >>> "{:.2}".format("hello") 'he' --参数必须是字符串才可以的特殊情况 >>> "{:2}".format("hello") 'hello' |
例题:
>>> y=123.45 >>> x="hello" >>> "{:.3f},{0:>20}".format(y,x) 报错,只能是位置+名参的组合 >>> "{:.3f},{:>20}".format(y,x) '123.450, hello' >>> "{a:.3f},{a:>20}".format(y,x,a=12) '12.000, 12' |
3.字符串切片
语法: 序列名[开始位置:结束位置:步长]
str1 = '0123456789'
取值:
print(str1[:5]) # 结果:01234 开始位置不写,默认从0开始选取
print(str1[2:]) # 结果:23456789 结束位置不写,表示选取到最后
print(str1[:]) # 结果:0123456789 如果不写开始和结束,表示选取所有
print(str1[2:5:2]) # 结果:24
print(str1[::-1]) # 结果:9876543210 如果步长为负数,表示倒序选取
print(str1[-1:-4:-1]) # 结果 987
print(str1[-4:-1:-1]) # XX不能选取出数据
4.基本操作符(+/*/in):
5.常用函数:
- len(x) :x不能为数字类型,返回长度。字典是返回有几对
- str(x) :x可以为任何一种数据类型,转变为字符串 , str("1w""w")=='1ww'
- chr(x) x为编号,标号转字符
- ord(x) :x为字符,字符转编号 a -97 ,z-122 ,A-65 , Z-90,1-49
字符串处理方法:
1.分割字符串:str.split(sep) 能够根据sep分隔字符串str,分割后的内容 以列表类型返回
2.统计个数:str.count(sub)方法返回字符串str中出现sub的次数,sub
是一个字符串
3.替换:str.replace(old, new)方法将字符串str中出现的old字符串 替换为new字符串,old和new的长度可以不同 ----注意,并没有修改原来的str的值
4.居中对齐:str.center(width, fillchar)方法返回长度为width的字符串, 其中,str处于新字符串中心位置,两侧新增字符采用 fillchar填充,当width小于字符串长度时,返回str。其 中,fillchar是单个字符
5.删除字符:str.strip(chars)从字符串str中去掉在其左侧和右侧出现在chars中的字符。chars是一个字符串,其中出现的每个字 符都会被去掉
7.拼接字符:str.join(iter)中iter是一个具备迭代性质的变量,该方法将 str字符串插入iter变量的元素之间,形成新的字符串。
字符串常考类型:
1.字符串转列表,空字符串也会被列表表示出来
>>> a="A b" >>> li=list(a) >>> li ['A', ' ', 'b'] >>> ''.join(li) 'A b' |
2.join与and ,or结合:考join里列表的元素要是字符串,’’返回False
>>> li=[1,2,3] >>> list=["1","a","1.2"] >>> (':' or ',').join(li) 考join里列表的元素要是字符串 Traceback (most recent call last): File "<pyshell#9>", line 1, in <module> (':' or ',').join(li) TypeError: sequence item 0: expected str instance, int found >>> (':' or ',').join(list) '1:a:1.2' | >>> (':' and ',').join(list) and返回最后一个True '1,a,1.2' >>> (':' or ',').join(list) or返回第一个True '1:a:1.2' >>> ('' and ',').join(list) and返回第一个False '1a1.2' >>> ('' or ',').join(list) or返回最后一个False '1,a,1.2' 空字符‘’表示False,字符空格’ ‘表示True |
3.字符串转义字符长度为1,如/n,/t....转义字符计算字符串长度时候统一当做一个单位长度。