指定类方法内部的类型



正确指定方法参数类型的python方法是什么?

检查Python函数如何处理传入的参数类型?我如何确保参数在Python中是正确的类型?只适用于基本数据类型

考虑下面的最小示例,其中我想将相同类型的对象传递给方法。这不起作用,因为该方法是在类内部定义的。

class num:
def __init__(self,val:int) -> None:
self.x=val
def print(self,other:num) -> None:
pass
def main():
n=num(3)
n.print()
main()

你可以使用前向引用:

class num:
def __init__(self,val:int) -> None:
self.x=val
def print(self,other:'num') -> None:
pass

这可以工作,因为Python(和任何符合PEP 484的检查器)会理解你的提示并适当地注册它,这是一个常见的场景。

最新更新