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

如何测试Python类是否为str、list等指定类型

实现方案

你列表中的元素本身就是类对象,无需使用isinstance(该方法用于判断实例是否属于某个类),直接判断类的身份即可得到你要的结果:

# 你的类存储列表示例
classes_list = [str, str, str, str, datetime.date, decimal.Decimal, decimal.Decimal, str, datetime.date, decimal.Decimal, decimal.Decimal, decimal.Decimal]

# 严格判断是否是str类
result = [cls is str for cls in classes_list]

如果需要支持str的子类也返回True的场景,可以使用issubclass方法:

result = [issubclass(cls, str) for cls in classes_list]

如果列表中可能混入非类的元素,为了避免issubclass报错,可以加一层类型校验:

result = [isinstance(cls, type) and issubclass(cls, str) for cls in classes_list]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 10:24:03