函数返回多个返回值的Python类型提示

kiv*_*k02 3 python type-hinting python-3.x typehints

如何使用Python类型提示编写函数声明,以便函数返回多个返回值?

是否允许以下​​语法?

def greeting(name: str) -> str, List[float], int :

// do something

return a,b,c
Run Code Online (Sandbox Code Playgroud)

MrG*_*eek 19

编辑:由于 Python 3.9 和PEP 585的接受,您应该使用内置tuple类来键入提示元组。

可以使用typing.Tuple类型提示(指定元组内容的类型,如果不需要,tuple可以使用内置类代替):

from typing import Tuple

def greeting(name: str) -> Tuple[str, List[float], int]:
    # do something
    return a, b, c
Run Code Online (Sandbox Code Playgroud)


Luk*_*les 7

现在支持内置索引tuplelist

def greeting(name: str) -> tuple[str, list[float], int]:
    pass
Run Code Online (Sandbox Code Playgroud)


kos*_*oda 5

python中的多个返回值以元组形式返回,并且元组的类型提示不是tuple类,而是typing.Tuple

import typing

def greeting(name: str) -> typing.Tuple[str, List[float], int]:

    # do something

    return a,b,c
Run Code Online (Sandbox Code Playgroud)