按名称从.csv文件中提取列

Jin*_*que 0 python csv

我有一个像这样的.csv文件:

  Name                    |    Twitter handle
  3 Degrees Incorporation |    3Degrees_Inc
Run Code Online (Sandbox Code Playgroud)

第一行是列名,第二行是两列中的每一列的内容.

如果我想提取"Twitter句柄"列下列出的数据,那么使用什么是正确的python代码?

谢谢

aba*_*ert 5

with open(csvfile) as f:
    for row in csv.DictReader(f, delimiter='|', skipinitialspace=True):
        do_something_with(row['Twitter handle']
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅文档 ......但除此之外没有更多内容.

但实际上,这不是一个合适的CSV,你只是很幸运,你要求最后一列,因为所有其他列都有终端空格和初始空格,并且没有办法跳过它.所以,如果你想处理任何其他列,你需要这样的东西:

with open(csvfile) as f:
    headers = next(csv.reader(f, delimiter='|', skipinitialspace=True))
    headers = [header.strip() for header in headers]
    for row in csv.DictReader(f, fieldnames=headers, 
                              delimiter='|', skipinitialspace=True):
        do_something_with(row[colname].strip())
Run Code Online (Sandbox Code Playgroud)