Use setattr, getatter instead of self.__dict__