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
- 下一篇: vue判断a是否可点击_判断 a 和 b