用单引号括起来的Python类型类类型


class Person:
def __init__(self, ......  
def make_friend(self, friend: 'Person') -> None:
.....

我正在学习python,我不明白这个例子。为什么friend的类型条件应该在单引号中?为什么不是friend: Person?它是如何工作的?它与类型类快捷方式有什么共同之处吗?

函数make_friend在类Person之前定义。

创建类时,首先创建命名空间(内部类函数),然后将其构建到类中(使用__prepare__方法)。

尝试在Person创建之前引用它将失败。

可以使用"forward reference"来解决这个问题,它可以与引号一起使用,也可以在文件顶部使用from __future__ import annotations

相关内容

  • 没有找到相关文章

最新更新