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

Python中如何判断值是否为Ellipsis(省略号)?

判断值是否为Ellipsis的优雅实现方法

为什么原写法报错

isinstance()的第二个参数要求是类型对象(或类型组成的元组),但Ellipsis是ellipsis类的唯一实例,并非类型本身,所以直接传入Ellipsis或...会抛出TypeError。

推荐解决方案

1. 用is直接判断(优先推荐)

由于Ellipsis是Python的单例对象,用is判断是最直观、高效的方式:

customer_ids_map = {
    "1": "aaa",
    "2": ...,
}

# 检查值是否为Ellipsis
if customer_ids_map["2"] is Ellipsis:
    # 也可以用更简洁的写法:if customer_ids_map["2"] is ...:
    print("该值是Ellipsis")

2. 统一类型检查场景下的isinstance用法

如果需要和其他类型检查逻辑统一使用isinstance(),可以传入Ellipsis的类型对象:

# 方法一:通过type(...)获取类型
print(isinstance(..., type(...)))  # 输出True

# 方法二:Python 3.10+ 可使用types模块的EllipsisType
import types
print(isinstance(..., types.EllipsisType))  # 输出True

内容的提问来源于stack exchange,提问作者Kirill Ilichev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 11:56:02