Python 使用 zipfile.ZipFile 读取文件的 n 行
Python read n line of a file with zipfile.ZipFile
我想知道是否可以读取 zip 文件中包含的每个文件的第二行?
zf = zipfile.ZipFile(myzip.zip)
for f in zf.namelist():
csv_f = zf.read(f)
first_line = csv_f.split('\n', 2)[0] ...?
感谢您的帮助。
是的。像这样:
with zipfile.ZipFile("myzip.zip") as z:
for n in z.namelist():
with z.open(n) as f:
for i in range(2):
second_line = next(f)
根据@S3DEV 的推荐,这将只读取前两行而不读取整个文件。人们可能更喜欢不将第一行写入变量 second_line
,但由于它在第二次传递时被覆盖,这似乎 到 不聪明。
我想知道是否可以读取 zip 文件中包含的每个文件的第二行?
zf = zipfile.ZipFile(myzip.zip)
for f in zf.namelist():
csv_f = zf.read(f)
first_line = csv_f.split('\n', 2)[0] ...?
感谢您的帮助。
是的。像这样:
with zipfile.ZipFile("myzip.zip") as z:
for n in z.namelist():
with z.open(n) as f:
for i in range(2):
second_line = next(f)
根据@S3DEV 的推荐,这将只读取前两行而不读取整个文件。人们可能更喜欢不将第一行写入变量 second_line
,但由于它在第二次传递时被覆盖,这似乎 到 不聪明。