You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为仅返回True的异常抛出函数添加类型提示?

正确的类型提示写法

你原代码里的返回类型写-> True是错误的,类型提示需要指定类型而非具体值。针对这个函数,正确的类型提示写法如下:

首先给参数num指定数字类型,返回类型指定布尔类型bool:

# Python 3.10+ 写法
def can_be_used_as_divider(num: int | float) -> bool:
    if num == 0:
        raise ValueError('The number must not be zero!')
    return True

如果是Python 3.9及以下版本,需要从typing模块导入Union来表示多类型:

from typing import Union

def can_be_used_as_divider(num: Union[int, float]) -> bool:
    if num == 0:
        raise ValueError('The number must not be zero!')
    return True

关键点说明

  • 参数类型:num是用来做除数的数字,所以用int | float(或Union[int, float])覆盖整数和浮点数场景。
  • 返回类型:函数正常执行时返回布尔值True,类型提示要写返回值的类型bool,而不是具体的返回值True。
  • 异常处理:Python的类型提示体系不包含异常声明,异常属于运行时行为,不需要在类型提示里体现。

内容的提问来源于stack exchange,提问作者Stupid genius

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 02:15:12