当我为返回一个参数的函数编写注释时,我没有问题。
def func() -> str:
return "ok"
但是,当我编写带有两个或多个参数的注释时,我的PyCharm会给我SyntaxError: invalid syntax
。
def func() -> str, str:
return "ok - 1", "ok - 2"
我认为可以将参数与tuple
组合使用,但是我认为这不是最好的方法。
我的问题是:如何正确地为带有两个或多个返回参数的函数添加注释?
答案 0 :(得分:24)
使用typing.Tuple
:
from typing import Tuple
def func() -> Tuple[str, str]:
return 'a', 'b'
这是适当的,因为从概念上讲,您实际上返回的是包含这些值的单个tuple
。注意:
print(type(func()))
输出:
<class 'tuple'>
请注意,除了空白的tuple
(()
)parentheses are not necessary to define a tuple
,这意味着'a', 'b'
被创建为tuple
,而不是单独创建return
语句将值汇总为一个。