In diesem Artikel erfahren Sie, was der Python-Aufzählungstyp ist. Eine kurze Einführung in Python-Aufzählungstypen hat einen gewissen Referenzwert. Ich hoffe, dass sie für Sie hilfreich ist.
Eins: Definition des Aufzählungstyps
Zwei: Der Unterschied zwischen Aufzählungsklasse und gewöhnlicher Klasse
1: Der Wert ist unveränderlich
2: Es hat die Funktion, das gleiche Tag und das zu verhindern Wert verschiedener Tags Es kann derselbe sein!
Drei: Aufzählungstyp, Aufzählungswert, Aufzählungsname
1: VIP.YELLOW.Value Holen Sie sich den Wert des Tags
2: VIP.BLACK.name Holen Sie sich den Tag-Namen
3 : Die Teile in der Aufzählung sind Aufzählungstypen!
Viertens: Vergleich zwischen Aufzählungen
1: Unterstützt Gleichheitsvergleiche und unterstützt keinen Größenvergleich
2: Vergleich zwischen verschiedenen Aufzählungsklassen
Fünf: Hinweise zur Aufzählung
Wenn die Werte verschiedener Tags gleich sind, wird das zweite als Alias verwendet und beim Aufruf überschrieben!
Beim Durchlaufen wird es nicht gedruckt. Die Lösung lautet:
for v in VIP.__members__.items(): print(v)
Sechs: Aufzählungskonvertierung
Entfernen Sie den Wert, der einem bestimmten Wert entspricht, aus der Datenbank (a = 1), Match der Typ der Aufzählung entsprechend dem Wert von a
a = 1 print(VIP(a))
Sieben: Andere
1: IntEnum-Typbeschreibung: Alle Aufzählungen sind vom Typ int!
2: Beschränken Sie die Werte der Aufzählungstypen auf unterschiedliche Werte
# ----------------------------------------------# # 定义一个枚举类型 # ----------------------------------------------# from enum import Enum from enum import IntEnum, unique class VIP(Enum): YELLOW = 1 GREEN = 2 BLACK = 3 RED = 4 class Common: YELLOW = 2 # 注意这里显示的是VIP.Black而不是3,枚举的意义重在标签而不是标签的值 print(VIP.BLACK) # ----------------------------------------------------# # 枚举类和普通类的区别 # 字典和普通类封装数据: 1:可变 2:没有防止相同标签得功能 # ----------------------------------------------------# # VIP.GREEN = 6 # 当改变值得时候报错 Common.YELLOW = 9 # 改变类变量的值 print(Common.YELLOW) x = Common() # 类的实例化 print(x.YELLOW) # ----------------------------------------------# # 枚举类型、枚举值、枚举名称 # ----------------------------------------------# print("Black = ", VIP.BLACK.value) # get value of Enum print("name = ", VIP.BLACK.name) # get value of Name,the type of name is str print(VIP.BLACK) # 名字为枚举类型 print(VIP['BLACK']) # 枚举可以被遍历 for v in VIP: print(v) # ----------------------------------------------# # 枚举之间的比较,支持等值比较,不支持大小比较 # ----------------------------------------------# result1 = VIP.GREEN == VIP.BLACK result2 = VIP.GREEN.value == 2 # 注意这里的结果 print(result1, result2) class VIP1(Enum): YELLOW = 1 GREEN = 2 BLACK = 3 RED = 4 WRITE = 5 result3 = VIP.GREEN == VIP1.GREEN print(result3) # ----------------------------------------------# # 枚举注意事项 # ----------------------------------------------# class VIP2(Enum): YELLOW = 1 GREEN = 1 # 别名 BLACK = 3 RED = 4 for v in VIP2: print(v) for v in VIP2.__members__.items(): print(v) for v in VIP2.__members__: print(v) # ----------------------------------------------# # 枚举转换 # ----------------------------------------------# a = 1 print(VIP(a)) # 可以看做是类型转换 # ----------------------------------------------# # 枚举补充 # ----------------------------------------------# # 1:IntEnum类型说明 class VIP3(Enum): YELLOW = 1 GREEN = "str" # 别名 BLACK = 3 RED = 4 class VIP4(IntEnum): YELLOW = 1 # GREEN = 'str' # 字符串报错 BLACK = 3 RED = 4 # 2:限制枚举类型的值不能一样 @unique class VIP6(Enum): YELLOW = 1 GREEN = 1 # 当值相同的时候会报错! BLACK = 3 RED = 4
Das obige ist der detaillierte Inhalt vonWas sind Python-Aufzählungstypen? Eine kurze Einführung in Python-Aufzählungstypen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!