您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在python中创建一个由列表索引的字典

在python中创建一个由列表索引的字典

dict键必须是可哈希的,列表不能可变。您可以在创建列表后对其进行更改。想一想,当用作键的数据发生更改时,尝试保持命令是多么棘手;这没有任何意义。想象一下这种情况

>>> foo = [1, 2]
>>> bar = {foo: 3}
>>> foo.append(4)

并且您将了解为什么Python不尝试将列表支持为键。

最明显的解决方案是使用元组而不是列表作为键。

>>> d = {[1, 2, 3]: 1, [2, 3]: 3}
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'
>>> d = {(1, 2, 3): 1, (2, 3): 3}
>>> d
{(2, 3): 3, (1, 2, 3): 1}
>>> d[2, 3]
3
python 2022/1/1 18:33:55 有219人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶