python读取二进制数据中的while循环_在Python中读取二进制文件并循环遍历每个字节...
f = open("myfile", "rb")
try:
byte = f.read(1)
while byte != "":
# Do stuff with byte.
byte = f.read(1)
finally:
f.close()
通过chrispy的建议:
with open("myfile", "rb") as f:
byte = f.read(1)
while byte != "":
# Do stuff with byte.
byte = f.read(1)
请注意,with语句在2.5以下的Python版本中不可用。要在v 2.5中使用它,您需要导入它:
from __future__ import with_statement
在2.6这不是必需的。
在Python 3中,它有点不同。我们将不再以字节模式从流中获取原始字符,但是字节对象,因此我们需要更改条件:
with open("myfile", "rb") as f:
byte = f.read(1)
while byte != b"":
# Do stuff with byte.
byte = f.read(1)
或者如benhoyt所说,跳过不相等,利用b“”计算结果为假的事实。这使得代码在2.6和3.x之间兼容,没有任何更改。如果你从字节模式转换到文本或者相反,它也会避免你改变条件。
with open("myfile", "rb") as f:
byte = f.read(1)
while byte:
# Do stuff with byte.
byte = f.read(1)
总结
以上是生活随笔为你收集整理的python读取二进制数据中的while循环_在Python中读取二进制文件并循环遍历每个字节...的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python with open as
- 下一篇: python抽奖游戏大全_抽奖游戏