首页 > 解决方案 > 比较变量的类型

问题描述

我有一个变量 x ,其类型是:

type(x)
>> <class '__main__.XmlListConfig'>

在下一部分,我想看看x的类型是<class'__main__.XmlListConfig'> 我无法比较并看到它到目前为止,我已经尝试过:

if type(x) == "__main__.XmlListConfig":

这不起作用,因为我当然将它与字符串进行比较。任何建议都会有所帮助,请随时向我询问更多说明。

标签: pythontypes

解决方案


要解决字符串比较问题,您可以尝试

if str(type(x)) == "<class '__main__.XmlListConfig'>":
    do_stuff()

虽然这不一致且难以阅读,但最好使用isinstance

if isinstance(x, XmlListConfig):
    do_stuff()

推荐阅读