我只想打印文件的前5行,但当行数超过5行时,它会多次打印这些行。下面是我的代码:
numLines = 0
with open("points_sorted", "r") as f:
for line in f:
pointsList = line.split()
numLines += 1
if numLines >= 5:
from itertools import islice
with open("points_sorted") as myfile:
head = list(islice(myfile, 5))
print(head)这是我的档案:
101
87 M
71 Ko
55 Ko
15 Ko
15 M
0 M Ko有人能帮我完成我的程序吗?
发布于 2020-01-30 03:57:36
在满足条件后,可以使用break语句退出循环:
numLines = 0
with open("points_sorted", "r") as f:
for line in f:
pointsList = line.split()
numLines += 1
if numLines >= 5:
break您还可以使用enumerate(),这样就不必手动计算行数:
with open("points_sorted", "r") as f:
for numLines, line in enumerate(f):
pointsList = line.split()
if numLines >= 4: # counting now starts at 0 instead of 1
break发布于 2020-01-30 04:04:18
你可以这样试一试
f.readline()允许两个人逐行读取文件
with open("points_sorted", "r") as f:
cnt = 5
while(cnt > 0):
pointsList = f.readline().split()
cnt = cnt -1您可以在while循环之间进行任何操作,并根据需要修改计数
https://stackoverflow.com/questions/59974366
复制相似问题