【发布时间】:2020-07-25 04:17:56
【问题描述】:
我有一个从类类型和传入的内容创建对象的函数。
def create_from(cls, info):
obj = cls.__new__(cls)
obj.load_info(info)
return obj
我这里使用__new__的原因是初始化对象需要的参数个数是不确定的。
除了我从asyncio.Future 继承的类之外,它适用于我拥有的所有类。
c = asyncio.Future
c.__new__(c)
会抛出 AttributeError 说:'Future' object has no attribute '_callbacks'。
我的问题是:
- 有没有更好的方法?
- 为什么 asyncio.Future 中的
__new__会抛出这个错误?在我看来,__new__应该被调用而不触及任何其他方法。
【问题讨论】:
标签: python python-asyncio python-class