:rtype:指定这是返回对象的类型
因此,当我obj
在下面的代码片段中创建对象时,我收到来自IDE的警告cls is not callable
,因为IDE期望,这cls
是object
类型的SomeAbstractClass
,我想要SomeAbstractClass
自己
IDE是对的,因为这是默认行为.但是我如何指定,我正在返回课程,而不是课程的实例?
指定type
而不是SomeAbstractClass
帮助,但不是解决方案,因为没有进一步的内省可用.
def class_selector(data): """ :rtype: SomeAbstractClass :return: Return some class based on given parameters """ return get_from.get(data.name) cls = class_selector(data) obj = cls(data.more_data)
同时我通过""":type: SomeAbstractClass"""
在创建对象后添加来解决这个问题 ,但是这并没有取消警告并且它是脏的解决方案.
顺便说一句,谈论python 2.x.