温馨提示:本文翻译自stackoverflow.com,查看原文请点击:其他 - Is there a way to compare contents of Enums in python?
enums python

其他 - 有没有一种方法可以比较python中枚举的内容?

发布于 2020-03-28 23:42:14

我有以下两个枚举:

class flower1(Enum):
    Jasmine = "Jasmine"
    Rose = "Rose"
    Lily = "Lily"


class flower2(Enum):
    Jasmine = "Jasmine"
    Sunflower="Sun flower"
    Lily = "Lily"

如何找到枚举值是否相等,以及是否找不到上述两个枚举中的内容差异?

查看更多

查看更多

提问者
jelat
被浏览
69
Ethan Furman 2020-02-01 01:12

Enums是直接可迭代的,因此,如果您只需要区别,而不需要哪个Enum具有哪个成员,则可以执行以下操作:

>>> set([m.name for m in flower1]) & set([m.name for m in flower2])
set(['Jasmine', 'Lily'])