如何在使用类型提示时编写作为链表中的节点的 Python 类

Raa*_*mEE 1 python

在 Python 3.7 中,我有一个数据类,它是链表中的一个节点。

from dataclasses import dataclass

@dataclass
class Node(object):
    right: Node
    left: Node
Run Code Online (Sandbox Code Playgroud)

问题是我在 Pycharm 中收到检查错误:

未解析的引用“节点”

运行时出现此错误

名称错误:名称“节点”未定义

dataclass 要求我声明类型,那么如何解决这个问题?

Raa*_*mEE 5

PEP 563解决了这个问题。

通过添加以下导入,稍后可以解决类型提示。

from __future__ import annotations
Run Code Online (Sandbox Code Playgroud)