Я новичок в Python и программировании, и в настоящее время я работаю над скриптом, который в конечном итоге будет окрашивать графства на карте США в соответствии со скоростью протестантизма. Я столкнулся с проблемой, которая оставила меня ошеломленным, и я не могу найти ответы.Я получаю: «объект не поддерживает назначение элемента» при заполнении словаря
Этот код читает в CSV-файл, который имеет следующий формат:
2060;6,018888889
2068;169,77
etc...
Если первый элемент кода ФИПС, а второй является скорость. Я хочу назначить их для словаря, который впоследствии можно использовать для цветной печати на карте округов. Следующий код предназначен для достижения только что:
#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 [ФИПС] = скорость», я получаю ошибку:
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.
Большое спасибо за решение. В конце концов, это была простая ошибка. – user2230067
Большое спасибо. Я получал эту ошибку, потому что у меня было такое же имя для метода и атрибута класса – user427969