我想知道如何将Python中的字符串转换为相应的整数值,如下所示:
>>>print WhateverFunctionDoesThis('\x41\x42')
>>>16706
我已经四处寻找,但一直没能找到一个简单的方法来做到这一点。
谢谢。
答案 0 :(得分:7)
>>> import struct
>>> struct.unpack(">h",'\x41\x42')
(16706,)
>>> struct.unpack(">h",'\x41\x42')[0]
16706
对于其他格式字符,请参阅the documentation
答案 1 :(得分:0)
如果'\ x41 \ x42'是基于16的num,就像AB一样。您可以使用字符串进行转换。
import string
agaga = '\x41\x42'
string.atoi(agaga, 16)
>>> 171
对不起,如果我弄错了...
答案 2 :(得分:0)
>>> s = '\x41\x42'
>>> sum([ord(x)*256**(len(s)-i-1) for i,x in enumerate(s)])
16706
或
>>> sum([ord(x)*256**i for i,x in enumerate(reversed(s))])