我有一个对象,我检查了
>>> type(a)
<class 'paraview.servermanager.ViewLayout'>
但是
>>> type(a) is paraview.servermanager.ViewLayout
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: 'module' object has no attribute 'ViewLayout'
此外,'ViewLayout'
不在dir(paraview.servermanager)
中(与错误消息一致)。
这怎么可能?
如何检查此类对象的类?
由于
>>> type(a) is paraview.servermanager.ViewLayout
抛出错误,我想
>>> a.__class__.__name__ is 'ViewLayout'
>>> str(a.__class__) == "<class 'paraview.servermanager.ViewLayout'>"
>>> str(type(a)) == "<class 'paraview.servermanager.ViewLayout'>"
都是同等有效的替代检查方式,但不了解我观察到的容易出错的原因。