This does the “class conversion” but it is subject to collateral damage. Creating another object and replacing its __dict__
as BrainCore posted would be safer – but this code does what you asked, with no new object being created.
class A(object):
pass
class B(A):
def __add__(self, other):
return self.value + other
a = A()
a.value = 5
a.__class__ = B
print a + 10