【问题标题】:Different formats of return type in Python 3Python 3 中不同格式的返回类型
【发布时间】:2021-06-22 21:19:50
【问题描述】:

假设我们有用户定义的数据类型class Node。有两个函数funcAfuncB。 这两个函数都接受Node 类型的单个参数。经过一些处理后,它们返回Node 类型的单个值。但是funcA 的返回类型是Node,这很明显,但funcB 也返回一个Node 类型的值,表示为"Node"

Python3 中的类型提示如何理解类型Node 和字符串"Node" 之间的区别?

def funcA (input_node:Node) -> Node
 ..

def funcA (input_node:Node) -> "Node"
 ..

【问题讨论】:

    标签: types python-3.9


    【解决方案1】:

    它们都有效。有时类型是前向引用,它不会编译。在这种情况下,将类型括在引号中允许前向引用。

    https://www.python.org/dev/peps/pep-0484/#forward-references

    【讨论】:

    • “有时类型是前向引用”..你有例子吗?
    • 是的,我提供的指向 PEP 484 的链接有示例。 'Tree'Tree.
    猜你喜欢
    • 2013-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-25
    • 2019-12-27
    相关资源
    最近更新 更多