在 python 中使用了 %x

%x usage in python

我对 python 很陌生,但我正在尝试一些东西。

print("%x"%(9))

给出 9 的输出

print("%x"%(10))

给出a的输出
这里发生了什么?为什么不同?

%xPython's format mini-language.

中的十六进制格式化程序

如果您想使用十进制表示,请改用 %d

print("%d" % 10)

%x or %X 是带符号的十六进制。

替代形式导致在 left-hand 填充和数字格式之间插入前导“0x”或“0X”(取决于使用的是“x”还是“X”格式)如果结果的前导字符还不是零。

更多信息请访问: https://python-reference.readthedocs.io/en/latest/docs/str/formatting.html

您尝试输入的数字正在转换为十六进制,因为您正在使用 %x,如果您想要 10,请使用 %d 代替 %x

print("%x"%(9))
output:9
print("%x"%(10))
output:a
print("%d"%(10))
output:10

如果您使用 %x,数字将被转换为十六进制,请尝试使用 %d 来获得相同的值而不进行转换。