python - 如何在 Python 2.7 中使用函数注解

标签 python python-2.7 annotations ipython

我在 Ipython 中看到了这个源代码:

https://github.com/ipython/ipython/blob/e1e2e960315f0f98703f6b8b077b10c99d04d70a/IPython/core/completer.py#L314

我知道这是python3中一个叫做Function Annotation的新特性。

但是这段代码也可以在 Python 2.7 中工作。为什么?

如何在 Python 2.7 中使用 Function Annotation

最佳答案

您不能在 2.7 中直接使用新的 (3.5+) 注释语法,但是如果您有 python 3.4+,您可以安装 mypy 并使用不同的语法在 2.7 代码上运行它。参见 PEP 484 .

您在链接中指向的示例可以在 2.7 中编写为:

class Completion:
    def __init__(self, start, end, text, type=None, _origin=''):
        # type: (int, int, str, str, str) -> None
        ...

关于python - 如何在 Python 2.7 中使用函数注解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42060055/

相关文章:

python - 在 Django 中使用子域

python - 在 Python 中使用 cPickle 导入错误

python - numpy python 3.4.1 : Python 3. 4 在注册表中找不到

java - 这些 Java 注释有什么作用?

python - 我如何向 Python 中的列表添加限制或规则?

python - 将嵌套对象添加到 Python 中的现有逻辑中

python - wxPython 语法高亮小部件

spring - 使用 Stomp 向同一主题发送多条消息

php - @ApiProperty openapi_context 类型数组示例

python - 使用 Python "requests"库读取流式 http 响应