首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Python中的字典将元组的两个元素映射到彼此之间?

如何使用Python中的字典将元组的两个元素映射到彼此之间?
EN

Stack Overflow用户
提问于 2017-06-12 05:08:09
回答 2查看 84关注 0票数 0

假设我有一个包含两个元素的元组

代码语言:javascript
运行
复制
(a, b)

如何创建将第一个元素映射到第二个元素的字典,使其看起来像

代码语言:javascript
运行
复制
{a : b}

我试过了

代码语言:javascript
运行
复制
new_dict = {tup[0]:tup[1]}

但我收到了一个

TypeError:无法理解的“列表”类型

EN

回答 2

Stack Overflow用户

发布于 2017-06-12 05:35:17

您正在接收的错误意味着您的键a是一个列表,它不能用作键。就像这样

代码语言:javascript
运行
复制
(['item'], 'value')

当你想要的是

代码语言:javascript
运行
复制
('key', 'value')

通常,字典键是字符串,尽管不是严格意义上的。它们也可以是整数或其他不可变类型。“不可变”意味着不能在适当的地方进行更新。可以通过添加或删除项来更新列表,因此不能正确散列,因此不能将其用作键。

票数 0
EN

Stack Overflow用户

发布于 2017-06-12 05:44:07

错误消息表明元组的第一项是列表。列表是可变的,因此不能是字典键,但元组可以。因此,将预期键从list转换为tuple:

代码语言:javascript
运行
复制
new_dict = { tuple(tup[0]), tup[1] }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44491758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档