【发布时间】:2015-04-29 08:23:08
【问题描述】:
简单的问题。有没有办法以位(而不是字节或文本)的形式读取文件?如果没有,有没有办法将我从 Python IO(二进制模式)获得的字节转换为位?
为了添加一点上下文,我不只是尝试读取这些位,还要在特定情况下修改它们并将修改后的位写入新文件。我可以使用字符串或整数形式的位。
编辑:原始文件中的数据将采用简单文本的形式。我要做的是获取组成每个字符的位并修改它们以满足我的需要。
【问题讨论】:
-
你不能把它们读成字节,然后用按位操作来操作它们吗?
-
读入字节,将字节转换为位,操作位,将位转换回字节,写入文件。
-
这就是我想要做的。我想弄清楚的是如何将字节转换为位。
-
听起来
bitarray模块就是你想要的。但是根据您想要做什么,您也可以通过执行bin(ord('A'))之类的操作将 a 表示为二进制字节。请参阅this answer,了解如何逐字节迭代文件。
标签: python python-3.x binary bit