首页 > 解决方案 > 测试python类是否为str、list等

问题描述

我有一个课程列表:

[<class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'datetime.date'>, <class 'decimal.Decimal'>, <class 'decimal.Decimal'>, <class 'str'>, <class 'datetime.date'>, <class 'decimal.Decimal'>, <class 'decimal.Decimal'>, <class 'decimal.Decimal'>]

我想做一个类似于 isinstance() 的布尔测试:

[isinstance(x, str) for x in l]

但 isinstance() 只接受对象而不是类。

我想要的结果,对于上面的列表来测试一个类是否是一个字符串,将类似于:

[True, True, True, True, False, False, False, True, False, False, False, False]

标签: pythonbooleanconditional-statementspython-class

解决方案


使用==运算符:

[x == str for x in l]

推荐阅读