如果没有 0x 前缀,则需要显式指定基数,否则无法分辨:
x = int("deadbeef", 16)使用 0x 前缀,Python 可以自动区分十六进制和十进制。
>>> print int("0xdeadbeef", 0)
3735928559
>>> print int("10", 0)
10 (您必须将0指定为基数,才能调用此前缀猜测行为;省略第二个参数意味着假定基数为 10。) 
 int(hexString, 16)可以解决问题,并且可以使用和不使用 0x 前缀: 
>>> int("a", 16)
10
>>> int("0xa",16)
10对于任何给定的字符串 s:
int(s, 16)