2016-10-29 146 views
0

我有一个csv文件,列ID,名称,地址,电话。我想读取每一行,以便将数据存储在两个变量中,即keydata,其中数据包含姓名,地址和电话。我想这样做是因为我想在新的csv的每一行中追加另一个列国家。任何人都可以帮助我在Python中的代码。我试过这个,但它不起作用:从python中读取csv的列

dict = {} 
reader = csv.reader(open('info.csv', 'r')) 
for row in reader: 
    key, *data = row 
    dict[key] = ','.join(data) 
+0

'key,* data = row'只适用于Python 3 ... – dawg

+0

您能否提供一些示例输入和输出? – Blacksilver

回答

3

key, *data = row是Python 3语法。对于Python 2,您可以这样做:

key, data = row[0], row[1:] 
0

您可以尝试下面的代码。我有两个选项,一个是为每一行创建一个列表,另一个是逗号分隔。根据使用情况,您可以使用任意一种。

import csv 
dict = {} 
reader = csv.reader(open('info.csv', 'r')) 
for row in reader: 
    data = [] 
    print row 
    key,data = row[0],row[1:] 
    dict[key] = data 
    # dict[key] = ','.join(data) 
print dict