采用:
Data = namedtuple("Data", next(reader))并省略以下行:
next(reader)
将其与基于martineau的以下注释的迭代版本相结合,该示例将成为适用于Python 2的示例
import csvfrom collections import namedtuplefrom itertools import imapwith open("data_file.txt", mode="rb") as infile: reader = csv.reader(infile) Data = namedtuple("Data", next(reader)) # get names from column headers for data in imap(Data._make, reader): print data.foo # ...further processing of a line...而对于Python 3
import csvfrom collections import namedtuplewith open("data_file.txt", newline="") as infile: reader = csv.reader(infile) Data = namedtuple("Data", next(reader)) # get names from column headers for data in map(Data._make, reader): print(data.foo) # ...further processing of a line...


