Map
所以这打印出文件中的所有行,除了第一行因某种原因,请帮帮我!
答案 0 :(得分:3)
删除该行:
line=file1.readline()
读取第一行,从而在开始实际的逐行迭代之前将文件指针移过第一行。通常,open(...)
返回的文件句柄是一个迭代器,它只生成一行。但是,您可以通过以下方式将其移回:
file1.seek(0)
答案 1 :(得分:1)
file1
是一个迭代器,它只能产生一个元素(简单来说就是行) - 然后它是空的。
在迭代其余行之前调用readline
一次,第一行已被读取。
演示:
>>> fake_file = iter('''line1
... line2
... line3'''.splitlines())
>>>
>>> line = next(fake_file) # mimics your call to readline
>>> line
'line1'
>>> for line in fake_file:
... print(line)
...
line2
line3
>>> for line in fake_file:
... print(line)
...
>>> # empty