Pythonic从CSV文件复制列的方法

cls*_*udt 4 python csv python-3.x import-from-csv

我正在寻找一种pythonic和简洁的方法来选择.csv文件中的列并存储列的所有单元格,例如列表.

import csv    

with open("/path/to/file.csv","r") as csvfile:
    reader = csv.DictReader(csvfile, delimiter=";")
    # TODO: select column for key "foo"
    # TODO: select column for key "bar"
    # TODO:store "foo" data in list
    # TODO: store "bar" data in list
Run Code Online (Sandbox Code Playgroud)

DSM*_*DSM 5

在纯Python中直接从DictReader行dicts中获取列,而其他人现在可能正在写这个效果的答案,所以我将在我最喜欢的Python库之一中展示如何做到这一点.数据操作,熊猫:

>>> import pandas as pd
>>> df = pd.read_csv("somefile.csv", sep=";")
>>> df
   foo  bar      apple
0    1  100       pear
1    2  200     orange
2    3  300  tangerine
3    4  400      peach
>>> df["foo"]
0    1
1    2
2    3
3    4
Name: foo
>>> df["bar"]
0    100
1    200
2    300
3    400
Name: bar
>>> df["foo"] * df["bar"]
0     100
1     400
2     900
3    1600
>>> list(df["foo"] * df["bar"])
[100, 400, 900, 1600]
Run Code Online (Sandbox Code Playgroud)

在黑暗的pandas日子里,我有自己的手工制作的库,用于这种数据访问.pandas几年前大约十五分钟后,我把它扔了..