Python:将多个十六进制值的字符串转换为整数

时间:2017-01-31 14:14:38

标签: python python-2.7 hex decimal string-conversion

我有四个hex个字符串,如:

"0x00 0x01 0x13 0x00" 

相当于0x00011300。我如何将这个十六进制值转换为整数?

3 个答案:

答案 0 :(得分:3)

由于您拥有hex个值的字符串。您可以从字符串中删除' 0x'以获取单个十六进制数字字符串。例如:

my_str =  "0x00 0x01 0x13 0x00"
hex_str = my_str.replace(' 0x', '')

hex_str保留的值为:

'0x00011300'   # `hex` string

现在,您可以将hex字符串转换为int

>>> int(hex_str, 16)
70400

答案 1 :(得分:1)

os.mkdirs(full_path,exist_ok=True)

答案 2 :(得分:0)

答案在这里Convert hex string to int in Python

如果没有 0x前缀,则需要明确指定基数,否则无法判断:

x = int("deadbeef", 16)

使用 0x前缀,Python可以自动区分十六进制和十进制。

print int("0xdeadbeef", 0)
3735928559

print int("10", 0)
10

(您必须指定0作为基础才能调用此前缀猜测行为;省略第二个参数意味着假定基数为10.请参阅注释以获取更多详细信息。)