pycharm - 在 Pycharm 中,如何为类型提示指定联合?

标签 pycharm type-hinting

有人知道如何为类型提示编写联合吗?

我正在执行以下操作,但 PyCharm 无法识别它:

def add(a, b)
    # type: (Union[int,float,bool], Union[int,float,bool]) -> Union([int,float,bool])
    return a + b

为联合指定类型提示的正确方法是什么?

我为此使用 python 2.7。

最佳答案

many ways为类型提示指定联合。

在 Python 2 和 3 中,您可以使用以下内容:

def add(a, b):
    """
    :type a: int | float | bool
    :type b: int | float | bool
    :rtype: int | float | bool 
    """
    return a + b

在 Python 3.5 中引入了 typing 模块,因此您可以使用以下之一:

from typing import Union

def add(a, b):
    # type: (Union[int, float, bool], Union[int, float, bool]) -> Union[int, float, bool]
    return a + b

from typing import Union

def add(a, b):
    """
    :type a: Union[int, float, bool]
    :type b: Union[int, float, bool]
    :rtype: Union[int, float, bool]
    """
    return a + b

from typing import Union


def add(a: Union[int, float, bool], b: Union[int, float, bool]) -> Union[int, float, bool]:
    return a + b

关于pycharm - 在 Pycharm 中,如何为类型提示指定联合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39334673/

相关文章:

python - 如何在声明类之前为类中使用的类型添加别名?

派生类返回值的 PhpStorm 类型提示

intellij-idea - 如何获取智能IDEA的代码映射?

PHP 类型提示 - 代码与注释

python - 为什么在Python中使用typing.Generic时保留cls关键字属性?

python-3.x - 如何让 mypy 提示将 Any 分配给 int(第 2 部分)

python - 为什么 PyCharm 中 numpy 的范围显示精度错误?

python - Pycharm Professional 与 WSL : Cannot read environment variables set with ~/. 配置文件

python - Pandas : Aggregated and Group by - IDE: Pycharm

python-3.x - PyCharm:在控制台中执行脚本而不是 'run'