python忽略io.open的第一行

时间:2018-04-03 18:38:18

标签: python io file-read

我有这段代码:

with io.open('csus.csv',mode='r',encoding='latin1') as csus:
  for line in csus:

我需要忽略第一行(标题)。当然我可以处理一个处女布尔值,在for循环运行期间检查它的值,否则False消化该行并将其设置为False。 但是我希望从文件中读取第一行(句柄?)并继续for loop

csus.readline()

没有预期的效果,是否可能,我应该使用什么?

作为一个附带问题,我应该关闭csus文件吗?我不认为这是在我复制它的示例中完成的,我不知道这个with .. as ..语句是否已经包含了close()?

3 个答案:

答案 0 :(得分:1)

你可以这样做:

with io.open('csus.csv',mode='r',encoding='latin1') as csus:
    next(csus)
    for line in csus:
        # do something

with语句负责为您关闭文件。

答案 1 :(得分:0)

试试这个:

enumerate并跳过第一行

import io
with io.open('csus.csv',mode='r') as csus:
  for i, row in enumerate(csus):
      if(i==0):
          pass
      else:
        print(str(i) + " " + row)

答案 2 :(得分:0)

您可以使用以下代码轻松实现:

with open('any.txt', 'r') as f:
    for i, line in enumerate(f):
        if i > 0:
            print(line) # Change to line.strip() to get rid of new line after everyline
相关问题