16 進文字列を整数に変換するにはどうすればよいですか?
"0xffff" ⟶ 65535
"ffff" ⟶ 65535
ベストアンサー1
プレフィックスがない場合0x
、ベースを明示的に指定する必要があります。そうしないと、判別する方法がありません。
x = int("deadbeef", 16)
プレフィックスを使用すると0x
、Python は 16 進数と 10 進数を自動的に区別できます。
>>> print(int("0xdeadbeef", 0))
3735928559
>>> print(int("10", 0))
10
(このプレフィックス推測動作を呼び出すには、ベースとして指定する必要があります。2番目のパラメータを省略すると、0
int()
10 進数と仮定します。