我想将枚举用作字典的键,但会遇到KeyError。
[A-Z][A-Za-z]+(?!\[[A-Z]+\])
运行此命令,我得到
#!/usr/bin/python3
from enum import Enum, unique
from typing import List
@unique
class Color(Enum):
RED = "cherry"
GREEN = "cucumber"
BLUE = "blueberry"
allColors = {}
def countColors(colors: List[Color]):
for c in colors:
allColors[c] += 1
countColors([Color.RED, Color.RED, Color.BLUE, Color.GREEN])
for c in allColors:
print(f"""{allColors[c]} {c.value} {c.name} pipes""")
documentation on dictionaries说,我可以将任何不可变值用作键,并且我假定枚举值是不可变的。
如何在字典中使用枚举作为键?
答案 0 :(得分:-1)
是否设置了3种颜色,但在第18行中设置了4种颜色
countColors([Color.RED, Color.RED, Color.BLUE, Color.GREEN])
尝试
countColors ([Color.RED, Color.Blue, Color.Green])