当前位置: 首页 > 知识库问答 >
问题:

带有前向引用的类型提示[重复]

巴博耘
2023-03-14

我实现了一个这样的树

class A:
    children: List[A]

但是在 PyCharm 中,我得到未解析的引用“A”。 有解决方法吗?

共有1个答案

程谭三
2023-03-14

您可以使用字符串:

class A:
    children: List['A']

这是转发引用的文档

 类似资料:
  • 有没有办法在类中定义参数的类型,以便该类型引用自身? 例如,以下内容不会运行: 错误:

  • 问题内容: 我有一个看起来像这样的函数: 在成功运行此函数时,我应该得到一个,但是如果出现错误,我应该得到一个-可以,因为我在另一个函数中处理了它。 我的函数第一行看起来像这样: 我的问题是:我应该在类型提示中提及错误吗? 问题答案: 类型提示不能说任何有关异常的信息。它们完全超出了该功能的范围。但是,您仍然可以在文档字符串中记录异常。 从 PEP 484-类型提示 : 例外情况 没有提出用于列出

  • 有没有办法消除警告: 未解决的引用'DeviceManager'... 对于这种单例模式? 截图:

  • 我试图弄清楚类型的自我引用是如何与python3的类型注释一起工作的——文档没有指定任何与此相关的内容。 例如: 此代码生成错误: 这是在使用Python3.5。1.

  • 问题内容: 我试图弄清楚类型的自引用如何与python3的类型注释一起使用-文档未对此进行任何指定。 举个例子: 此代码生成错误: 这是使用Python 3.5.1 问题答案: PEP 0484-类型提示-前向声明的问题解决了以下问题: 类型提示的问题在于,在定义函数时会评估注释(根据PEP 3107 ,与默认值类似),因此在定义函数时必须已经定义了注释中使用的任何名称。常见的情况是类定义,其方法

  • 问题内容: class Node: def append_child(self, node: Node): if node != None: self.first_child = node self.child_nodes += [node] 我该怎么办?因为当我运行它时,它说。 我应该只删除and实例在函数中检查它吗?但是,我该如何访问的属性(我希望它是类的实例)? 我不知道如何在Python,