我有一个python类,它应该解压一个归档文件,递归地迭代目录结构,然后返回文件以进行进一步处理。在我的情况下,我想散列这些文件。我正在努力归还文件。这是我的照片。 我创建了一个解压函数,该函数创建一个日志文件,其中包含解压文件的所有路径。然后我想访问这个日志文件并返回所有文件,这样我就可以在另一个python类中使用它们进行进一步的处理
日志文件的结构:
/home/usr/Downloads/outdir/XXX.log
/home/usr/Downloads/outdir/Code/XXX.py
/home/usr/Downloads/outdir/Code/XXX.py
/home/usr/Downloads/outdir/Code/XXX.py
兴趣代码:
@staticmethod
def read_received_files(from_log):
with open(from_log, 'r') as data:
data = data.readlines()
for lines in data:
\\ This does not seem to work zet
read_files = open(lines.strip())
return read_files
我相信这就是你想要的:
您在迭代时返回,阻止打开其他文件
由于您主要关注zip文件中存储的文件的元数据和散列,而不是文件本身,因此无需将文件解压缩到文件系统
相反,您可以使用
ZipFile.open()
方法通过类似文件的对象访问文件的内容。可以使用每个文件的ZipInfo
对象收集元数据。下面是一个示例,它获取文件名和文件大小作为元数据,以及文件的哈希值相关问题 更多 >
编程相关推荐