回答編集履歴

1 d

tiitoi

tiitoi score 20183

2019/05/31 16:35  投稿

bytes オブジェクトを iterate すると、1バイトずつ int 型で取り出せるので、それを bin() 関数に与えて print() してください。
2進数表記を長さ8で固定したい場合は、bin() の代わりに書式指定子 `{変数名:08b}` で print() してください。
```python
data = b"\x00\x00\x80"
for x in data:
   print(bin(x)) # '0b100000000000000000000000'
   print(bin(x))
# 0b0
# 0b0
# 0b10000000
for x in data:
   print(f'{x:08b}')
# 00000000
# 00000000
# 10000000
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る