我有一个包含邮政编码及其时区的CSV文件。如何将CSV文件转换为字典?这将是一个更大的任务模块。我的代码看起来像这样,我仍然坚持下一步做什么:
import csv
with open('zipcode.csv', 'rb') as f:
reader = csv.reader(f)
for row in reader:
print row
input_file = csv.DictReader(open("zipcode.csv"))
答案 0 :(得分:1)
猜测你的文件结构,试试这个:
import csv
my_dict = {}
with open('zipcode.csv', 'rb') as f:
reader = csv.reader(f)
for row in reader:
my_dict[row[0]] = row[1]
答案 1 :(得分:1)
我不确定你的数据文件是什么样的,但是这里有一种方法可以使用pandas DataFrame,假设你的csv文件有两列:zip_code和time_zone,用逗号分隔,没有任何标题:
import pandas as pd
df = pd.read_csv('zipdata.csv', header=None)
my_dict = dict(zip(df[0], df[1]))
答案 2 :(得分:1)
这个简单的脚本可以帮助你搞清楚。您不需要使用DictReader
。
import csv
# Open the file
with open('zipdata.csv') as f:
# Populate a dictionary with the reader
my_dict = dict(csv.reader(f))
# Print the key-value pairs
for k, v in my_dict.iteritems():
print("{}: {}".format(k, v))
我使用了自己的测试csv文件,test.csv
并输出了以下内容:
23:59 $ cat test.csv
hello, world
test, testing
✔ ~
23:59 $ python test.py
test: testing
hello: world