如何确定给定的对象是否是Python中的给定类型?

如何确定给定的对象是否是Python中的给定类型?

问题描述:

我总是认为运算符is确定给定变量是否为给定类型。但我只是确定这是不是真的:如何确定给定的对象是否是Python中的给定类型?

>>> class A(): 
     pass 
... 
>>> a = A() 
>>> a is A 
False 

如何测试是否aclass A类型的?

请指教。

谢谢,Boda Cydo。

+2

好像每新手副本的浪潮淹没SO。如果你有任何疑问,你只需要看你的权利。 – SilentGhost 2010-03-11 22:28:16

你想要isinstance(a, A)

请记住,通过向A添加方法来避免isinstance检查可能会更好,这样可以在不明确确定它是否为A的情况下按照自己的意愿进行操作。

is确定两个对象是否是相同的对象。

+0

添加到Ned正确提到的内容中,“a是b”与“id(a)== id(b) – 2010-03-15 09:32:23