【发布时间】:2023-01-12 21:44:31
【问题描述】:
假设我有一个可以接受 int 或 None 的函数。你会怎么写呢?
def func(x: int or None):
return x
【问题讨论】:
-
在那种情况下@Chris 不会
Optional仍然更好吗? -
@matszwecja,是的。由于
None是备选方案之一,因此Optional更好。对于其他类型的工会,|is preferred in Python 3.10+。
假设我有一个可以接受 int 或 None 的函数。你会怎么写呢?
def func(x: int or None):
return x
【问题讨论】:
Optional 仍然更好吗?
None 是备选方案之一,因此 Optional 更好。对于其他类型的工会,| is preferred in Python 3.10+。
使用Union
from typing import Union
def func(x: Union[int, None]):
return x
请参阅此处的文档:https://docs.python.org/3/library/typing.html#typing.Union
【讨论】: