如何卸载(重新加载)Python模块?
函数reload(moduleName)会重新加载先前加载的模块(假设您使用语法“importmoduleName”加载了该模块,而没有退出该脚本。它旨在用于会话式编辑,其中您已经为模块编辑了源文件并希望在不进行测试的情况下对其进行测试。离开Python并重新启动它。例如,
>>> import mymodule >>> # Edited mymoduleand want to reload it in this script >>> reload(mymodule)
请注意,moduleName是模块的实际名称,而不是包含模块名称的字符串。pythondocs声明以下有关重新加载功能的信息:
重新编译Python模块的代码,并重新执行模块级别的代码,从而定义了一组新对象,这些对象绑定到模块字典中的名称。扩展模块的init函数不会被第二次调用。模块命名空间中的名称将更新为指向任何新的或更改的对象。对旧对象的其他引用(例如模块外部的名称)不会反弹以引用新对象,并且如果需要的话,必须在出现它们的每个命名空间中进行更新。