If you are checking instances of classes then you can use isinstance or check using the type function
class A:
pass
a = A()
print(isinstance(a,A)) # this is the preferred method
print(type(a) == A)
OUTPUT
True
True
If you are checking the classes themselves then you can do a straight comparison.
class A:
pass
print(A == A)
OUTPUT
True
If you are checking subclasses then you can use issubclass function
class Parent:
pass
class A(Parent):
pass
class B(Parent):
pass
print(issubclass(A, Parent))
print(issubclass(B, Parent))
OUTPUT
True
True
Update from the question in your comment if you want to consolidate classes you could do something like this:
class Color:
def __init__(self, color):
self.color = color
red = Color('red')
blue = Color('blue')
green = Color('green')
print(red.color)
print(blue.color)
print(green.color)
print(isinstance(red, Color))
print(isinstance(green, Color))
OUTPUT
'red'
'blue'
'green'
True
True
...? How does that vary depending onitem_type?