gpt4 book ai didi

python-2.7 - PyCharm 中的 Python 2.7 类型提示可调用类型

转载 作者:行者123 更新时间:2023-12-05 01:44:48 27 4
gpt4 key购买 nike

我正在尝试在 python 2.7 中使用类型提示,如 here 所述.

我有一个函数需要一个具有特定签名的可调用(函数)作为参数,但我不知道如何注释它。

我试过了

def set_function(self, function):
# type: ((int) -> None) -> None

但 PyCharm 显示预期的 ')' 和意外的标记错误

我似乎找不到这方面的任何文档...

最佳答案

在 Pycharm(或任何其他理解 PEP 484 类型提示的工具)中记录可调用项的正确方法如下:

from typing import Callable

def set_function(self, function):
# type: (Callable[[int], None]) -> None
...

由于您使用的是 Python 2,因此您需要从 PyPi 安装 typing 模块(如果您还没有的话)。 (typing 是在 Python 3.5 的标准库中加入的,PyPi 上的模块是一个 backport)。

您可以在 Python's documentation 中找到有关使用输入模块的更多信息,并在 mypy 的文档中.

(如果您不知道,mypy 是一个命令行工具,它也理解 PEP 484 类型提示,并且还将静态分析和类型检查您的代码。它是 Pycharm 内置类型检查器的独立成果。因为 Pycharm 和和 mypy 使用 PEP 484 类型,mypy 的文档通常是开始查找以了解有关使用类型提示的更多信息的好地方。)

关于python-2.7 - PyCharm 中的 Python 2.7 类型提示可调用类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44785570/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com