使用break来读取列表的第一行

时间:2013-03-15 22:31:45

标签: python list break

假设我想阅读并仅对文件中的第一行执行某些操作。我选择说:

stuff = open('some_file.txt','rb')

for row in stuff:
    # do something to first line
    break
for row in stuff:
    # do something to all other lines

这就像我正在读取文件对象而不是内存中的东西一样。

是否有反对这样做的论据?

3 个答案:

答案 0 :(得分:4)

您可以使用next() function获取第一行:

firstline = next(stuff, '')  # default value '' if the file is empty

for row in stuff:
    # rest of the file

这适用于任何可迭代的。如果您有一个行列表,则可以lines[0],或首先在列表中调用iter()

答案 1 :(得分:0)

fileinput是一个很棒的模块。

for line in fileinput.input(['some_file.txt']):
  if not fileinput.isfirstline():
    data = proces_line(line);
    output(data)

答案 2 :(得分:0)

您可以使用readline()方法:

stuff = open('some_file.txt','rb')

first = stuff.readline()

for row in stuff:
    # do something to all other lines