If your class does not modify _ _ getitem _ _ or _ _ setitem _ _ for special attribute access all your attributes are stored in _ _ dict _ _ so you can do:
nobj.__dict__ = oobj.__dict__.copy() # just a shallow copy
If you use python properties you should look at inspect.getmembers()
and filter out the ones you want to copy.