最佳答案
在 python 3中,我可以创建参数并返回类型注释:
class Graph:
def __init__(self, V: int, E: int, edges: list):
pass
@classmethod
def fromfile(cls, readobj: type(sys.stdin)):
pass
def V(self) -> int:
pass
def E(self) -> int:
pass
问题是我不能使用当前类(Graph)的返回类型进行注释,因为它还没有定义。 例如:
class Graph:
def reverse(self) -> Graph:
pass
这个代码有错误
def reverse(self) -> Graph:
NameError: name 'Graph' is not defined
这些注释对于编写文档和允许 IDE 识别参数和返回类型 = > 启用自动完成都非常有用
UPD:
所以我想到的是,这要么是不可能的,要么需要一些我不喜欢的技巧,所以我决定只使用 def reverse (self) -> 'Graph':
这对于文档来说是可以理解的,尽管它违反了规则。