Pythonでバイナリリテラルをどのように表現しますか? 質問する

Pythonでバイナリリテラルをどのように表現しますか? 質問する

Python リテラルを使用して整数を 2 進数として表現するにはどうすればよいですか?

16 進数の答えは簡単に見つけられました。

>>> 0x12AF
4783
>>> 0x100
256

8進数:

>>> 01267
695
>>> 0100
64

Python でリテラルを使用してバイナリを表現するにはどうすればよいでしょうか?


回答の要約

  • Python 2.5 以前: リテラルを使用してバイナリを表現できますint('01010101111',2)が、リテラルでは表現できません。
  • Python 2.5 以前:バイナリリテラルを表現する方法はありません。
  • Python 2.6 ベータ版: 次のように実行できます:0b1100111または0B1100111
  • 0o27Python 2.6 ベータ版: or 0O27(2 番目の文字は文字 O) を使用して 8 進数を表すこともできます。
  • Python 3.0 ベータ版: 2.6 と同じですが、8 進数の古い構文は使用できなくなります027

ベストアンサー1

参考までに、 Python の将来の可能性:
Python 2.6 以降では、プレフィックス0bまたは0Bを使用してバイナリリテラルを表現できます。

>>> 0b101111
47

新しいbin関数を使用して、数値のバイナリ表現を取得することもできます。

>>> bin(173)
'0b10101101'

ドキュメントの開発バージョン:Python 2.6 の新機能

おすすめ記事