Python 向二进制文件(.bin)中写入字节
我的想法是用0和1每八个组成一个字节 例如 "00000000"
我想知道如何将 例如 "00000000" 由0和1组成的字节写如到二进制文件(.bin)中去
我的做法
file = open('a.bin','wb')
a = '01111111'
# 由0和1组成的字节
b = eval(f'b\'{chr(int(a,2))}\'')
# 把字符串转换成字节
print(b)
file.write(b)
file.close()
但是当a的值大于128时就会发生如下错误
Traceback (most recent call last):
File "********************", line 4, in <module>
b = eval(f'b\'{chr(int(a,2))}\'')
File "<string>", line 1
b'ÿ'
^
SyntaxError: bytes can only contain ASCII literal characters
# 语法错误:字节只能包含ASCII文本字符
据我了解的错误原因是ASCII编码中只有128个字符但是一个8位二进制的字节可以储存256个字符
我想充分利用ASCII中没有利用到的剩余128个字符
我尝试了许久并没有找到有效的解决办法希望有人可以帮我解答这个疑惑
感谢 !