【发布时间】:2021-11-13 15:17:21
【问题描述】:
我正在尝试将以下元组元组转换为一个字典(以及其中一个反转的字典):
EDIT_TUTORING_PLACES_CHOICES_TRANSLATOR = (
(AT_STUDENT, ['1']),
(AT_TUTOR, ['2']),
(ONLINE, ['3']),
(AT_STUDENT_AND_TUTOR, ['1', '2']),
(AT_STUDENT_AND_ONLINE, ['1', '3']),
(AT_TUTOR_AND_ONLINE, ['2', '3']),
(ALL, ['1', '2', '3']),
)
这是我使用的代码:
dict = {v: k for k, v in list(EDIT_TUTORING_PLACES_CHOICES_TRANSLATOR)}
我收到以下错误:
TypeError: unhashable type: 'list'
我应该怎么做?非常感谢!
【问题讨论】:
-
你想做什么?如果任务只是创建字典,
dict(EDIT_TUTORING_PLACES_CHOICES_TRANSLATOR)应该可以工作。另一个问题是,如果您需要字典,为什么要初始化元组.. -
Olvin Roght,我想要反转
-
那么您应该阅读错误消息。字典的键应该是可散列的。您可以将列表转换为可散列的元组。
-
没错,我发了一个答案
标签: python string dictionary tuples key