以下是一个遍历二进制文件的迭代器的示例代码:
class BinaryFileIterator:
def __init__(self, file_path):
self.file_path = file_path
self.file = open(file_path, 'rb')
def __iter__(self):
return self
def __next__(self):
byte = self.file.read(1)
if byte:
return byte
else:
self.file.close()
raise StopIteration
# 使用示例
file_path = 'binary_file.bin'
binary_iterator = BinaryFileIterator(file_path)
for byte in binary_iterator:
print(byte)
在上述示例中,BinaryFileIterator 类实现了一个迭代器,用于遍历二进制文件。它的构造函数接收一个文件路径作为参数,并打开该文件以便迭代读取。__iter__ 方法返回迭代器自身,而 __next__ 方法逐个读取文件中的字节。
在使用示例中,我们创建了一个 BinaryFileIterator 实例,并使用 for 循环迭代打印每个字节。当文件读取完毕时,会抛出 StopIteration 异常,这是迭代器结束的标志,同时关闭文件。
上一篇:遍历二叉树的广度优先搜索算法
下一篇:遍历二维数组