tags:

views:

56

answers:

2

I always thought operator is determined if the given variable is of the given type. But I just determined it was not true:

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

How do I test if a is of type class A?

Please advise.

Thanks, Boda Cydo.

+5  A: 

You want isinstance(a, A).

Keep in mind, it might be better to avoid the isinstance check by adding methods to A that make it do what you want without explicitly determining that it is an A.

is determines if two objects are the same object.

Ned Batchelder
Adding to what Ned correctly mentioned, `a is b` is the same as doing `id(a) == id(b)`
jeffjose
+2  A: 

isinstance(a,A)

unutbu