При обращении к словарю по ключу он думает что обращение идет по индексу
VIP_BONUS = {1: (40000, 200),
2: (30000, 150),
3: (20000, 100),
4: (10000, 50),
5: (4000, 30)},
BONUS_DATA = VIP_BONUS[5]
OUT:
IndexError: tuple index out of range
Вопрос, как обратиться по ключу к указанному словарю?
Ответы (2 шт):
Автор решения: Danis
→ Ссылка
у вас после } стоит запятая, из-за этого в переменную записывается не словарь, а кортеж с одним элементом
VIP_BONUS = {1: (40000, 200),
2: (30000, 150),
3: (20000, 100),
4: (10000, 50),
5: (4000, 30)}
Автор решения: MaxU
→ Ссылка
замените:
VIP_BONUS = {1: (40000, 200),
2: (30000, 150),
3: (20000, 100),
4: (10000, 50),
5: (4000, 30)}, # <-- запятая после "}" превращает VIP_BONUS в кортеж с единственным элементом - словарем
на:
VIP_BONUS = {1: (40000, 200),
2: (30000, 150),
3: (20000, 100),
4: (10000, 50),
5: (4000, 30)}
Пояснение: если после переменной поставить запятую, то вместо скалярного значения получится кортеж:
a = 1,
print(type(a))
>>> <class 'tuple'>