Python 3词典的值

时间:2017-12-17 12:12:40

标签: python dictionary

我正在进行二十一点游戏,需要收集玩家拥有的所有牌的得分。当我使用以下代码时,我得到了不可用的类型:' list'错误。

卡片是一本字典,用于存放所有卡片及其各自的二十一点积分,以及一个用于保存玩家卡片的字典(因为它们是卡片词典中的键。

score = cards[list(p.values())]

非常感谢任何有关如何做到这一点的帮助。

3 个答案:

答案 0 :(得分:2)

该错误意味着python中的列表不能用作字典键。

您想要的是访问该列表中每个元素的字典值,因此请尝试使用列表推导。

score = sum(cards[c] for c in p.values())

答案 1 :(得分:1)

列表永远不能成为字典的关键。

Why Lists Can't Be Dictionary Keys

答案 2 :(得分:1)

您收到该错误只是因为您尝试使用public class Theater { String theaterName; ArrayList<Movies> movies; } 作为字典键,这在Python中是禁止的。 [知道为什么要看@SyntaxError答案]

尝试使用代码代替您的代码

list