def reload_class(class_obj):
module_name = class_obj.__module__
module = sys.modules[module_name]
pycfile = module.__file__
modulepath = string.replace(pycfile, ".pyc", ".py")
code=open(modulepath, 'rU').read()
compile(code, module_name, "exec")
module = reload(module)
return getattr(module,class_obj.__name__)
Существует множество проверок ошибок, которые вы можете выполнить, если вы используете глобальные переменные, вам, вероятно, придется выяснить, что произойдет.