格式化占位符
数字占位符,值可以不用写数字
>>> "{0} love {1},{2}".format('I',"You","Aimi") 'I love You,Aimi'
关键字占位符
关键字占位符,需要在值中,对应相关的关键字参数,否则会出错,比如c="You",关键字占位符可以调整顺序。
>>> "{a} love {b},{c}".format(a='I', c="You",b="Aimi") 'I love Aimi,You' >>> "{a} love {b},{c}".format(a='I',"You","Aimi") SyntaxError: positional argument follows keyword argument
组合占位符
关键字占位符,如果在数字后面,前面的值可以省去对应的参数名称,但是关键字的参数名称一定要对应上。
>>> "{0} loce {b},{c}".format('I',b='You',c='Aimi') 'I loce You,Aimi'
打印出花括号
这个有点类似于打印反斜杠\,需要输入\\道理一样
问题:想一下,为什么下面的Not Print不打印出来?
>>> "{{0}}".format("Not Print") '{0}'
解释:因为0已经被解释掉了,跟反斜杠道理一样,示例如下
>>> "{{0}},{0}".format("ddd") '{0},ddd'
数据格格式化
>>> '{0:.1f}{1}'.format(27.658,'GB') '27.7GB'
上面示例,为什么打印的不是27.658GB呢? 这是因为在格式化域中,冒号:表示格式化的开始,后面接的是格式化符号,如下格式化符号含义。
字符串格式化符号含义
符号 | 说明 | 示例 |
%c | 格式化字符及其 ASCII 码 |
>>> "%c" % 97 'a' >>> "%c %c %c" % (97, 98, 99) 'a b c' |
%s | 格式化字符串 |
>>> 'I %s You' % 'Love' 'I Love You' |
%d | 格式化整数 |
>>> '%d + %d = %d' % (3, 5, 3+5) '3 + 5 = 8' |
%o | 格式化无符号八进制数 |
>>> '%o' % 0xFF '377' >>> '%o' % 10 '12' |
%x | 格式化无符号十六进制数 |
>>> '%x' % 10 'a' >>> '%x' % 160 'a0' |
%X | 格式化无符号十六进制数(大写) |
>>> '%X' % 10 'A' |
%f | 格式化浮点数字,可指定小数点后的精度(默认精确6位)会进行四舍五入 |
>>> '%f' % 23.82 '23.820000' >>> '%.2f' % 27.658 '27.66' >>> |
%e | 用科学计数法格式化浮点数 |
>>> '%e' % 23.82 '2.382000e+01' |
%E | 作用同 %e,用科学计数法格式化浮点数 |
>>> '%E' % 23.82 '2.382000E+01' |
%g | 根据值的大小决定使用 %f 或 %e |
>>> '%g' % 23.82 '23.82' |
%G | 作用同 %g,根据值的大小决定使用 %f 或者 %E |
>>> '%G' % 23.82 '23.82' |
如果你会Java等语言,这种占位符应该很熟悉
格式化操作符辅助命令
符号 | 说明 | 示例 |
m.n | m 是显示的最小总宽度,n 是小数点后的位数 |
>>> '%10.1f' % 23.82 ' 23.8' |
- | 用于左对齐 |
>>> '%-10d' % 5 '5 ' >>> '%-10.3d' % 5 '005 ' |
+ | 在正数前面显示加号(+) |
>>> '%d' % 5 '5' >>> '%+d' % 5 '+5' >>> '%+d' % -5 '-5' |
# | 在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X',十进制前面什么也不显示 |
>>> '%#o' % 10 '0o12' >>> '%#X' % 10 '0XA' >>> '%#x' % 108 '0x6c' >>> '%#d' % 10 '10' |
0 | 显示的数字前面填充 '0' 取代空格 |
>>> '%3d' % 5 ' 5' >>> '%03d' % 5 '005' >>> '%-010d' % 5 '5 ' >>> '%-03d' % 5 '5 ' |
思考,为什么 '%-03d' % 5 结果不是500?
假象一下如果这么操作,那操作金额时,会不会很容易就被攻击了,所以作者吧这种操作还是用空格展示
Python 的转义字符及其含义
符号 | 说明 |
\' | 单引号 |
\" | 双引号 |
\a | 发出系统响铃声 |
\b | 退格符 |
\n | 换行符 |
\t | 横向制表符(TAB) |
\v | 纵向制表符 |
\r | 回车符 |
\f | 换页符 |
\o | 八进制数代表的字符 |
\x | 十六进制数代表的字符 |
\0 | 表示一个空字符 |
\\ | 反斜杠 |
未经允许请勿转载:程序喵 » Python3 扩展教程 —— 字符串格式化符号含义及转义字符含义