How to specify multiple return types using type-hints
我在python中有一个函数,它可以返回
例如,这是正确的方法吗?
1 2 | def foo(id) -> list or bool: ... |
From the documentation
class
typing.Union Union type; Union[X, Y] means either X or Y.
这是一种比一种返回数据类型更具代表性的方法。
1 2 3 4 | from typing import Union def foo(client_id: str) -> Union[list,bool] |
但请注意,典型的情况并非如此。Python继续保持一种动态类型的语言。在制定Prior代码的过程中,已经开发了注释语法,以帮助将其释放到生产中。As PEP 484 States,"No type checking happens at runtime."
ZZU1
当你看到我经过一个内部价值和一个重新计算的过程时,如何将
1 2 | >>> foo.__annotations__ {'return': <class 'list'>, 'a': <class 'str'>} |
请通过PEP 483,再多一点。另见Python中的什么样的东西3.5?
Kindly note that this is only available for Python 3.5 and upwards.This is mentioned clearly in PEP 484.
当评价等于然后就不会做你想做的事了。
The native way to describe a"either a or b"type hint is union(thanks to Bhargav Rao):
1 | def foo(client_id: str) -> Union[list, bool]: |
我不想成为"你为什么想这样做"盖伊,但也许有两个归来的类型不是你想要的:
如果你想退回一本书,指明某些类型的特殊错误,考虑使用例外情况。如果你想把一本书作为一种特殊的价值,也许是一份空白的清单会是一个很好的代表。你还可以指明