python对文件进行二进制写操作

 python访问txt文件非常简便,可是对于二进制文件的访问却让没有接触过的小伙伴有点恼火了,尤其是对于习惯了C语言的人而言。笔者经历一番波折总算实现了python对二进制文件的写操作,在这里记录一下。 

python对二进制文件的操作需要使用bytes类,直接写入整数是不行的,如果试图使用fobj.write(123)向文件中以二进制写入123,结果提示参数不是bytes类型。 



整数类型貌似不能直接转换为bytes类型,但是列表却可以,比如:bytes([1])可以获得一个b'\x01' 


由此我们可以通过这种“曲线救国”的方式将整数转换为bytes了,即:bytes([整数])  

 

调用fobj.write(bytes([1]))写入ok!  



code



在WinHex中查看杠杆写入的测试文件test.bin,写入的是0~255的二进制数,读出来也是,写入正确! 


参考链接:

https://jingyan.baidu.com/article/af9f5a2d4e1e9543140a4536.html 



回到顶部