【发布时间】:2023-01-15 10:11:09
【问题描述】:
我可以或应该为 Python 类型提示使用 True 或 False 吗?
def can_be_used_as_divider(num) -> True:
if num == 0:
raise ValueError('The number must not be zero!')
return True
我有一个函数在不同情况下会引发一些错误,如果没有则返回 True。 我应该提出错误,返回错误还是有什么好的模式?
【问题讨论】:
-
不要返回任何东西。
-
引发和捕获错误通常比仅返回
False并检查返回是否为 false 慢得多......所以一旦你的应用程序开始变慢你应该删除引发并返回 false ......你也有一个有限的嵌套 try/catch 的数量,因此请注意不要命中它。 -
@luk2302 从函数的名称来看,我会说不返回任何东西将与您期望的相反(因为
None评估为 false) -
您将该函数命名为好像它应该返回
False而不是引发错误。
标签: python python-typing