深入浅出Python字符串名目化
字符串名目化操纵符(%),很是雷同于C 语言内里的printf()函数的字符串名目化,甚至所用的标记都一样,都用百分号(%),而且支持所有printf()式的名目化操纵。语法如下:
format_string % string_to_convert
format_string为名目的志字符串,形式为“%cdoe”;string_to_convert 为要名目化的字符串,假如是两个以上,则需要用小括号括起来。
字符串名目化标记
| 名目化标记 | 说明 |
| %c | 转换成字符(ASCII 码值,可能长度为一的字符串) |
| %s | 转换成字符串,优先用str()函数举办字符串转换 |
| %d | 转成有标记十进制数 |
| %u | 转成无标记十进制数 |
| %o | 转成无标记八进制数 |
| %x | (Unsigned)转成无标记十六进制数 |
| %e | 转成科学计数法 |
| %% | 输出% |
| %X | (Unsigned)转成无标记十六进制数,转换后16进制字符大写,和%e雷同(转换后小写) |
字符串名目化输出举例:
charA = 65
charB = 66
print("ASCII码65代表:%c" % charA)
print("ASCII码66代表:%c" % charB)
Num1 = 0xEF3
Num2 = 0xAB03
print('转换成十进制别离为:%u和%u' % (Num1, Num2))
Num3 = 1500000
print('转换成科学计数法为:%e' % Num3)
输出:
ASCII码65代表:A
ASCII码66代表:B
转换成十进制别离为:3827和43779
转换成科学计数法为:1.200000e+06
名目化字符还可以共同帮助标记一起利用,很是利便。
帮助标记,如下表所示:
| 帮助标记 | 说明 |
| * | 界说宽度可能小数点精度 |
| – | 用做左对齐 |
| + | 在正数前面显示加号(+) |
| <sp> | 在正数前面显示空格 |
| # | 在八进制数前面显示零(0),在十六进制前面显示“0x”可能“0X”(取决于用的是“x”照旧“X”) |
| 0 | 显示的数字前面填充“0”而不是默认的空格 |
| m.n | 是显示的最小总宽度,n 是小数点后的位数 |
留意:帮助标记要在百分号(%)和名目化标记之间。
帮助标记举例:
Num1 = 108
print("%#X" % Num1)
Num2 = 234.567890
print("%.2f" % Num2)
输出:
0X6C
234.57