用Python将CSV转换为列表

用Python将CSV转换为列表,python,list,csv,Python,List,Csv,我已经将一个.csv文件导入到Python中,并将其命名为data。它看起来像这样: aK bK id .124 .121 1 .320 .202 2 .222 .198 3 以此类推几百行。如何将列aK和列bK转换为列表?我试过这个: aK = [] for row in data: aK.append(row[0]) 但aK仍然是一个空白名单 import csv CSV_FILE = "test.csv" def main(): with o

我已经将一个
.csv
文件导入到Python中,并将其命名为
data
。它看起来像这样:

aK    bK    id
.124  .121  1
.320  .202  2
.222  .198  3
以此类推几百行。如何将列
aK
和列
bK
转换为列表?我试过这个:

aK = []
for row in data:
    aK.append(row[0])
但aK仍然是一个空白名单

import csv

CSV_FILE = "test.csv"

def main():
    with open(CSV_FILE) as inf:
        in_csv = csv.reader(inf, delimiter=" ", skipinitialspace=True)
        header = next(in_csv)       # skip header row
        ak, bk, id = zip(*in_csv)   # get columns

if __name__ == "__main__":
    main()

ak = ('.124', '.320', '.222')
bk = ('.121', '.202', '.198')
id = ('1', '2', '3')

你接近它的方式似乎很好。您只是没有显示如何创建
数据

>>> import csv
>>> with open('data.csv') as f:
        aK, bK = [], []
        next(f) # skip headers
        for row in csv.reader(f, delimiter='\t'):
            aK.append(float(row[0]))
            bK.append(float(row[1]))


'aK\tbK\tid\n'
>>> aK
[0.124, 0.32, 0.222]
>>> bK
[0.121, 0.202, 0.198]

你是如何在数据中导入csv的?你能澄清这个问题吗please@japem我想他在问你是如何加载文件并将其转换为python字符串/列表/其他对象的。你使用的是
csv
模块吗?哦。是的,我是导入csv>>>a=open('MyFile.csv')>>>data=csv.reader(a)@japem对于您在评论中发布的代码,很难相信在循环后,
aK
是空的,发布问题正文中的实际代码。(可能您在将文件对象传递给
csv.reader
)是“test.csv”归档我最初导入的文件?@Hackaholic-为什么要重新发明轮子?在Python中,导入模块非常简单。此外,
csv
模块将比任何手工制作的模块都更加健壮。@iCodez这4行代码,我不认为会重新发明whell,所有这些csv模块都使用了这个内置函数,如split和striponly@HughBothwell我明白你为什么要寻找
delimiter=“
跳过初始空格。这对于这个网站上的数据来说是有意义的,但我认为OP很可能使用了一个制表符分隔的文件,Stackoverflow将它们转换为空格,或者是文本编辑器