我是 Python 和编程的新手,目前正在编写一个脚本,该脚本最终将根据新教的比率在美国地图上为县着色。我遇到了一个让我目瞪口呆的问题,我似乎找不到任何答案。
此代码读取具有以下格式的 csv 文件:
2060;6,018888889
2068;169,77
etc...
其中第一项是fips代码,第二项是费率。我想将这些分配给一个字典,以后我可以用它在县地图上着色。以下代码旨在实现这一目标:
#populate dictionary with fips and rate from csv file
evanrate = {}
with open(r'C:\Users\Jeroen\documents\hacker1\evanrate.csv') as evanrate:
parsereader = csv.reader(evanrate, delimiter = ';')
for row in parsereader:
fips = row[0]
rate = float(row[1].replace(',', '.'))
evanrate[fips] = rate
但是,当我尝试使用代码“evanrate[fips] = rate”填写字典时,出现错误:
Traceback (most recent call last):
File "C:\Users\Jeroen\Documents\hacker1\evanrate.py", line 16, in <module>
evanrate['fips'] = rate
TypeError: '_io.TextIOWrapper' object does not support item assignment
我正在使用 Python 3.3 和 Windows 7。