如何将.csv文件导入为字典?
我正在尝试将.csv文件作为字典导入。 .csv文件有两列:名为“ AIRPORT CODE”的键和名为“ AIRPORT”的元素。我首先尝试将其导入为列表,因为我发现它更容易从列表转换为字典。
def load_airports_dict(filename):
import csv
reader = csv.reader(open(filename, 'r'))
data_list = []
for row in reader:
data_list.append(row)
d = { }
for row in data_list:
d[row[0]] = row[1]
print(d)
不幸的是,当我尝试调用一个函数来对字典进行切片时,即使我在函数之外运行代码,它也会给出我要寻找的内容,但我得到“ NoneType”对象无法下标”。
答案 0 :(得分:2)
不要在定义中导入内容
使用with
您需要一个return
语句。
所有这些:
import csv
def load_airports_dict(filename):
result = {}
with open(filename, 'r') as handle:
reader = csv.reader(handle)
for row in reader:
result[row[0]] = row[1]
return result