gpt4 book ai didi

python - 使用python跳过文件中的最后5行

转载 作者:太空狗 更新时间:2023-10-30 02:19:05 24 4
gpt4 key购买 nike

我想使用 python 删除文件中的最后几行。该文件很大,所以要删除前几行,我使用以下代码

import sys
with open(sys.argv[1],"rb") as f:
for _ in range(6):#skip first 6 lines
next(f)
for line in f:
print line

最佳答案

这是一个用于截断任何可迭代对象的通用生成器:

from collections import deque

def truncate(iterable, num):
buffer = deque(maxlen=num)
iterator = iter(iterable)

# Initialize buffer
for n in range(num):
buffer.append(next(iterator))

for item in iterator:
yield buffer.popleft()
buffer.append(item)

truncated_range20 = truncate(range(20), 5)

print(list(truncated_range20))
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

使用截断,你可以这样做:

from __future__ import print_function

import sys

from itertools import islice


filepath = sys.argv[1]

with open(filepath, 'rb') as f:
for line in truncate(islice(f, 6, None), 5):
print(line, end='')

关于python - 使用python跳过文件中的最后5行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32308373/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com