我有一些 Perl 代码,其中十六进制()函数将十六进制数据转换为十进制。在 巨蟒上怎么做?
>>> int("0xff", 16) 255
或者
>>> int("FFFF", 16) 65535
阅读文件。
如果“十六进制数据”指的是表单的字符串
s = "6a48f82d8e828ce82b82"
你可以利用
i = int(s, 16)
把它转换成一个整数
str(i)
将其转换为十进制字符串。
你可以用一个字面的评估:
>>> ast.literal_eval('0xdeadbeef') 3735928559
或者只是将基函数指定为 int的参数:
int
>>> int('deadbeef', 16) 3735928559
一个不为人知的技巧是,如果您将基 0指定为 int,那么 Python 将尝试从字符串前缀确定基:
0
>>> int("0xff", 0) 255 >>> int("0o644", 0) 420 >>> int("0b100", 0) 4 >>> int("100", 0) 100