打印出第一行以外的csv行

Kar*_*rus 4 python csv

我想用Python读取一个CSV文件,然后打印出除第一行之外的每一行.

我知道如何打印出所有行:

with open('myfile.csv', 'rb') as csvfile:
    reader = csv.reader(csvfile, delimiter=',')
    for row in reader:
        print row
Run Code Online (Sandbox Code Playgroud)

我能想到的不打印第一行的唯一方法是:

with open('myfile.csv', 'rb') as csvfile:
    reader = csv.reader(csvfile, delimiter=',')
    for i, row in enumerate(reader):
        if i != 0:
            print row
Run Code Online (Sandbox Code Playgroud)

但这似乎并不优雅.还有其他方法吗?

Tim*_*ker 6

csvreader对象是迭代器,这意味着您可以使用next()以下命令跳过单个条目:

with open('myfile.csv', 'rb') as csvfile:
    reader = csv.reader(csvfile, delimiter=',')
    next(reader) # just ignore the result
    for row in reader:
        print row
Run Code Online (Sandbox Code Playgroud)

  • +1.我对csv做了很多处理,这正是我所做的.出于某种原因,我总是评论它:`next(读者)#skip header row` (2认同)