Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 13, 2016 13:22:18

dimasikmipt
Зарегистрирован: 2016-02-13
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Разрешите проблему словарей

Всем добрый день!
Прошу помощи, так как не могу найти ответ на следующий вопрос.
Пример:
Создаем словарь (самый простейший):
d1,2)
После этого не составляет проблем сделать следующее:
print(d) - получаем 2
Или следующее:
a=d-5 - как итог а равняется -3
НО!!!
Как только я хочу изменить элемент
d=3 - выскакивает ошибка.
Прошу вас помочь разобраться почему так происходит и какими методами я могу изменить эту злополучную двойку ну хотя бы на тройку.

Заранее спасибо за помощь!

d={}
d[1]=(1,2)
print(d)
print(d[1][1])
a=d[1][0]-10
print(a) '
d[1][1]=3 'не позволяет выполнить изменения элемента - почему?

Отредактировано dimasikmipt (Фев. 13, 2016 13:36:12)

Офлайн

#2 Фев. 13, 2016 13:28:49

A.N.Onim
Зарегистрирован: 2015-11-08
Сообщения: 60
Репутация: +  0  -
Профиль   Отправить e-mail  

Разрешите проблему словарей

Код или скриншот в студию.

Офлайн

#3 Фев. 13, 2016 13:37:23

dimasikmipt
Зарегистрирован: 2016-02-13
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Разрешите проблему словарей

d={}
d[1]=(1,2)
print(d)
print(d[1][1])
a=d[1][0]-10
print(a)
d[1][1]=3

Traceback (most recent call last):
  File "C:/Users/Sony/.PyCharmEdu20/config/scratches/scratch", line 7, in <module>
    d[1][1]=3
TypeError: 'tuple' object does not support item assignment
{1: (1, 2)}
2
-9

Офлайн

#4 Фев. 13, 2016 13:49:03

A.N.Onim
Зарегистрирован: 2015-11-08
Сообщения: 60
Репутация: +  0  -
Профиль   Отправить e-mail  

Разрешите проблему словарей

Вы пытаетесь изменить значение элемента кортежа - то бишь константного списка, а его значения менять нельзя. Используйте простой список - вместо ().

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version