我想在列表中存储文件块,以便稍后可以在每个块上使用map函数执行某些操作。直观地说,我很想得到类似下面的东西(但它不起作用):
fi = open(fileName, "rb")
data = fi.read()
fi.close()
max = len(data)
block = 1024
tmp = []
for i in range(0, max, block):
tmp.append(data[i:i+block])
答案 0 :(得分:4)
我建议首先按块读取文件:
block = 1024
with open(fileName, 'rb') as f:
tmp = [chunk for chunk in iter(lambda: f.read(block), b'')]
请参阅iter()
的文档。