我正在尝试使用我的类型提示进行有条理的工作,以使代码更易于添加。
我做了以下课程:
class Player(ABC)
@abstractmethod
def some_function():
pass
class SomeSubclass(Player):
def some_function():
#some meaningfull code
pass
p1: Type[Player] = SomeSubclass()
在最后一行中,我收到了PyCharm的预期类型错误:
预期类型'Type [Player]'改为'SomeSubclass'
我使用错误的Typehint还是缺少其他内容?
最佳答案
如果变量应该是实例而不是类,则无需使用Type
。这些中的任何一个都可以工作:
p1: Player = SomeSubclass()
要么
p1: SomeSubclass = SomeSubclass()
或者,如果您希望
p1
是类而不是实例:p1: Type[Player] = SomeSubclass
关于python - Typehint用于Python中的子类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58754267/