我使用 Python,但不知道该怎么做。
我想要读取文件中的许多行,但我必须从第二行开始读取。所有文件都有不同的行数,所以我不知道该怎么做。
代码示例是从第一行读到第16行。但我必须从第二行开始读取文件,一直读到最后一行。谢谢!:)
with open('filename') as fin:
for line in islice(fin, 1, 16):
print line
您应该能够调用next
并丢弃第一行:
with open('filename') as fin:
next(fin) # cast into oblivion
for line in fin:
... # do something
由于 fin
是一个生成器,所以这很简单易懂。
with open("filename", "rb") as fin:
print(fin.readlines()[1:])
查看islice的文档:
itertools.islice(iterable, stop)
itertools.islice(iterable, start, stop[, step])创建一个迭代器,从可迭代对象中返回选定的元素。如果start不为零,则跳过可迭代对象中的元素,直到达到start。之后,连续返回元素,除非设置的步长step大于一,这将导致跳过项目。如果stop为None,则迭代继续,直到迭代器耗尽,如果有的话;否则,停止在指定位置。与常规切片不同,islice()不支持start、stop或step的负值。可以用于从已展平内部结构的数据中提取相关字段(例如,多行报告可能在每三行上列出一个名称字段)。
我认为你只需告诉它从第二行开始迭代到末尾即可。例如:
with open('filename') as fin:
for line in islice(fin, 2, None): # <--- change 1 to 2 and 16 to None
print line