python学习
字符串处理方法
1.大小写转换
函数 | 作用 |
---|---|
str.lower() | 全小写 |
str.upper() | 全大写 |
str.capitalize() | 第一个字符大写 |
str.swapcase() | 大写转小写,小写转大写 |
2.str.split()
能够使字符串以一种格式分割开,并返回一个分割完成的列表。
3.str.count(x,beg,end)
返回某个字符x出现的次数,beg和end分别可填所数区间的索引,不填默认整个字符串。
4.str.replace(old,new)
替换字符串内容。
5.str.center(width,[fillchar])
使字符串居中,用其他字符填充。
6.str.strip(chars)
去掉字符串左右的chars字符。
7." "join(iter)
在iter中除最后一个字符外的字符后添加""里的内容。
8.str.strip()和str.rstrip(),str.lstrip
分别是删除开头和末尾多余的空白,右边的空白,左边的空白。
9.str.endswith(x,beg,end)和str.startswith(x,beg,end)
检查字符是否以x为结尾或开头,是返回True,不是返回False.
10.str.find(x, beg, end和str.rfind(x, beg,end)
检测 str
是否包含在字符串中,如果指定范围 beg
和 end
,则检查是否包含在指定范围内,如果包含,返回开始的索引值,否则返回 -1。rfind从右边开始查。
11.str.isnumeric
判断是否全为数字,是返回True,否则False。
12.str.ljust(width,fillchar)和str.rjust(width,fillchar)
设置宽度,分别左对齐,右对齐,用fillchar进行填充。
13.str.partition(char)和str.rpartition(char)
如下:
l = "I wander in in earth"
print(l.partition('in'))
print(l.rpartition('in'))
#('I wander ', 'in', ' in earth')
#('I wander in ', 'in', ' earth')
14.str.maketrans(intab,outtab)和str.translate(table)
创建一个字符映射的转换表,即使outtab中的每个字符分别与intab中的每个字符一一对应,再配合translate()函数进行转换。如下
str7 = 'this is string example....wow!!!'
intab = 'aeiou'
outtab = '12345'
trantab = str7.maketrans(intab, outtab)
print(trantab) # {97: 49, 111: 52, 117: 53, 101: 50, 105: 51}
print(str7.translate(trantab)) # th3s 3s str3ng 2x1mpl2....w4w!!!
注意:这些方法的实现需要将其赋值给一个变量否则无法实现。
字符串的格式化
字符串的格式化有多种方法
1.%格式化
语法:print("符号" % 输出数据)
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串,用str()方法处理对象 |
%r | 格式化字符串,用rper()方法处理对象 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | 根据值的大小决定使用%f或%e |
%G | 作用同%g,根据值的大小决定使用%f或%E |
如:
print("%d" % 1)
print("%f" % 0.1)
print("%s" % 'apple')
print("%d %s %c" % (12,'apple','a'))
#1
#0.100000
#apple
#12 apple a
其他辅助命令
符号 | 功能 |
---|---|
m.n |
m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话) |
- |
用作左对齐 |
+ |
在正数前面显示加号( + ) |
# |
在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X') |
0 |
显示的数字前面填充'0'而不是默认的空格 |
如:
print('%5.1f' % 27.658) # ' 27.7'
print('%.2e' % 27.658) # 2.77e+01
print('%10d' % 10) # ' 10'
print('%-10d' % 10) # '10 '
print('%+d' % 10) # +10
print('%#o' % 10) # 0o12
print('%#x' % 108) # 0x6c
print('%010d' % 5) # 0000000005
format方法
a = 1
b = 'asdasd'
print("{} {}".format(a,b)) #默认顺序
print("{0} {1}".format(a,b)) #位置填参数
print("{c} {d}".format(c=a,d=b)) #关键字参数
#1 asdasd
#1 asdasd
#1 asdasd
格式 | 输出 |
---|---|
{:m.nf} | 设置宽度为m,保留n位小数,如果没有小数则不用.nf |
{:+.nf} | 带符号保留小数点后n位小数 |
{:符号<n} | 设置宽度为n向左对齐,剩下的以符号填充 |
{:符号>n} | 向右对齐 |
{:符号^n} | 居中对齐 |
{:.n%} | 百分号格式保留n位小数 |
{:.ne}/{:.nE} | 科学计数法保留n位小数 |
{
标签:10,格式化,format,python,print,str,字符串
From: https://www.cnblogs.com/102204216zxf/p/16969576.html
相关文章
|