Python指定了一些列表返回类型

标签 python python-3.x pycharm typing

我正在使用 PyCharm 编写一个 Python 项目。 我有一个可以返回多种类型的函数:

list(User), list(Player), list(Builder)

我想使用 pycharm 自动完成功能,但它似乎无法推断出正确的可能返回类型,因此我阅读了有关打字模块的信息,并尝试使用此语法作为返回类型:

-> Union[List[Builder], List[User], List[Player]]

然而 PyCharm 仅建议 Builder 的属性,这是 Union 表达式上的第一个属性。 如果我使用非列表返回类型,则键入会按预期工作,并建议联合表达式中编写的所有类型的正确属性。即:

-> Union[Builder, User, Player]

有办法解决这个问题吗?

谢谢!

最佳答案

我正在使用该文档字符串。我就这样用一石打死两只鸟。第一个是如果我不清楚的话,记录我的方法:)

def method_a():
    """
    :return:
    list of int, list of str
    """
    return [1, 2, 3], ["a", "b", "c"]

Autocomplete with PyCharm

关于Python指定了一些列表返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56342466/

相关文章:

python - 我该如何修复这个算法?

python - 为什么 XGrabKey 会生成额外的聚焦和聚焦事件?

python - 如何在 Python 中打开名称中包含或以 # 开头的模块?

python - 无法从 pytest.fixture 获取数据,而是获取数据位置

python - Pycharm 剧照在重命名 .py 文件后显示旧名称。如何解决这个问题?

python - 在 Pycharm 中使用 sys.stdin 从文件中读取

Python:无序集上的 .pop()

python - 如何使用 Flask 从服务器删除文件

python - 将元组的一部分解包为元组

python - 基于用户输入在 Python 中创建加权有向图