在Python中使用` - >`? [重复]

问题描述 投票:-1回答:1

这个问题在这里已有答案:

谁能告诉我下面两个功能有什么区别?它们看起来非常相似,除了->

foo1()

def foo1() -> None:
pass

foo2的()

def foo2():
pass

当我以类似的方式称呼他们时。那么为什么要使用-> None?我知道使用Python的None

python python-3.x type-hinting
1个回答
2
投票

这称为type hinting,仅用于帮助程序员更容易理解程序的返回和输入类型,以及允许外部linting和静态分析程序在Python上工作。 Here is the official RFC explaining why it exists

Python实际上并不使用类型提示(因为Python是动态类型的 - 类型是在运行时确定的,而不是在实际解析源时的编译时)并且可以安全地省略。

符合您的版本2的功能在每种情况下都完美无缺。

Python 3内置了对typing模块类型提示的支持,而Python 2.7需要第三方mypy模块。

© www.soinside.com 2019 - 2024. All rights reserved.