1.三种常用格式化字符串方式
1.%作占位符
name = '张三' age = 10 print('姓名%s,今年%d' % (name, age)) # 运行结果:姓名张三,今年10
%占位符,s和d表示填充的数据类型,顺序应与%后括号中的数据变量顺序一致
2.使用format()
name = '张三' age = 10 print('姓名{0},今年{1}岁'.format(name, age)) # 运行结果:姓名张三,今年10岁
{}为占位符,0表示format参数中第一个数据变量 依次类推
3.使用 f 格式化
name = '张三' age = 10 print(f'姓名{name},今年{age}岁') # 运行结果:姓名张三,今年10岁
字符串前要加 f 字符串中 {数据变量名} 才能生效
2.字符串宽度和精度的写法
1.%填充符表示法
# 宽度为10 运行结果: 80 print('%10d' % 80) # 保留三位小数运行结果:3.142 print('%.3f' % 3.14159) # 保留三位小数,宽度为10 运行结果: 3.142 print('%10.3f' % 3.1415926)
10为宽度 .3f 为保留三位小数 d为转化前元素数据类型
注意:如果% 后有多个数据元素,只对第一个数据元素进行格式化
2.format()表示法
# .3表示一共三个数 运行结果:3.14 print('{0:.3}'.format(3.14159)) # .3f表示三位小数 运行结果:3.142 print('{0:.3f}'.format(3.14159)) # 宽度为10 保留三位小数 运行结果: 3.142 print('{0:10.3f}'.format(3.14159)) # 0是占位符的顺序, 可以省略 默认为0
例如:
# 运行结果: 256.354 print('{1:10.3f}'.format(3.14159, 256.354)) # 1表示占位符 即format()中参数的顺序,从0开始 1就是第二个数据元素 -> 256.354 # 10表示格式化后数据元素的宽度 # .3f表示精度保留三位小数
3.字符串对齐方式
1.center() 居中对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是选填的,默认是空格,如果设置宽度小于实际宽度则则返回原字符串
s = 'hello,python' print(s.center(20, '*')) # 运行结果:****hello,python****
2.ljust() 左对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是选填的,默认是空格,如果设置宽度小于实际宽度则则返回原字符串
s = 'hello,python' print(s.ljust(20)) # 运行结果:hello,python print(s.ljust(20, '*')) # 运行结果:hello,python******** print(s.ljust(10)) # 运行结果:hello,python
3.rjust() 右对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是选填的,默认是空格,如果设置宽度小于实际宽度则则返回原字符串
s = 'hello,python' print(s.rjust(20)) # 运行结果: hello, python print(s.rjust(20, '*')) # 运行结果:********hello,python print(s.rjust(10)) # 运行结果:hello,python
4.zfill() 右对齐,左边用0填充,该方法只接收一个参数,用于指定字符串的宽度,如果指定的宽度小于等于字符串的长度,返回字符串本身
s = 'hello,python' print(s.zfill(20)) # 运行结果:00000000hello,python print(s.zfill(10)) # 运行结果:hello,python
到此这篇关于Python格式化字符串的案例方法的文章就介绍到这了,更多相关Python 格式化字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!