| 123456789101112131415161718192021222324252627282930313233343536 |
- # Testing with builtin types
- assert isinstance(10, int) == True
- assert isinstance("Hello, world!", str) == True
- assert isinstance([1, 2, 3, 4, 5], list) == True
- assert isinstance({"key": "value"}, dict) == True
- assert isinstance(3.14, float) == True
- assert isinstance(object(), object) == True
- class MyClass:
- pass
- class BaseClass(object):
- def __init__(self):
- self.a = 1
- class DerivedClass(BaseClass):
- def __init__(self):
- super().__init__()
- self.b = 2
- base_instance = BaseClass()
- derived_instance = DerivedClass()
- # Instances of DerivedClass should also be instances of BaseClass
- assert isinstance(MyClass(), object) == True
- assert isinstance(base_instance, object) == True
- assert isinstance(base_instance, BaseClass) == True
- assert isinstance(derived_instance, BaseClass) == True
- # However, instances of BaseClass are not instances of DerivedClass
- assert isinstance(base_instance, DerivedClass) == False
- # And instances of DerivedClass are, of course, instances of DerivedClass
- assert isinstance(derived_instance, DerivedClass) == True
- print('PASS')
|