gpt4 book ai didi

Python super() 不适用于 Enum 参数

转载 作者:太空宇宙 更新时间:2023-11-04 09:45:37 26 4
gpt4 key购买 nike

我有代码

from enum import Enum

EventType = Enum('EventType', ('TIMER_EVENT', 'LOG_EVENT'))


class Event(object):
def __init__(self, type_=None):
self.type_ = type_


class LogEvent(Event):
def __int__(self):
super(LogEvent, self).__init__(EventType.LOG_EVENT)


class TimerEvent(Event):
def __init__(self):
super(TimerEvent, self).__init__(EventType.TIMER_EVENT)

print(LogEvent().type_)
print(TimerEvent().type_)

结果是

None
EventType.TIMER_EVENT

super() 函数在 LogEventTimerEvnet 类中几乎相同

但是为什么LogEventsuper()函数不起作用呢?

我的python版本是3.6.4

最佳答案

LogEvent 类中,您有 def __int__ 而不是 def __init__

关于Python super() 不适用于 Enum 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49939624/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com