【发布时间】:2012-03-01 21:41:25
【问题描述】:
我有一些 Perl 代码,其中 hex() 函数将十六进制数据转换为十进制。我如何在Python 上做到这一点?
【问题讨论】:
-
您确定要将数据转换为“十进制”吗? Perl 函数只是将十六进制字符串转换为整数,而不是十进制字符串。
-
@SvenMarnach 我使用这个 perl hex() 手册 misc-perl-info.com/perl-hex.html "这个函数:有一个十六进制字符串作为参数(或者一个表达式,在评估后将返回一个十六进制字符串)将返回十进制对应值"
-
@Sir D:那篇文章措辞非常糟糕。正如 Sven 所说,
hex将十六进制字符串转换为整数值(在内部以二进制形式存储,但本质上只是一个没有基数的数值)。对print的调用将该值转换为十进制字符串并打印出来。 -
扩展问题“如何像 python 解释器那样从十六进制或十进制(或二进制)转换为整数。”在“这里已经有答案的问题”中得到了回答。 int(string,base) 函数从字符串前缀推断输入字符串的基数如果您传递 0 作为基数。例如int("0x1402",0) int("0b1010000000010",0) int("5122",0) stackoverflow.com/questions/209513/…