我很清楚,在Python2中没有干净的解决方案来卸载模块,这是一个已知的bug,应该得到纠正。
帖子:
How do I unload (reload) a Python module? Remove an imported python module
在2009和2010年中,确认了这种对卸载模块的支持不足。
我想知道这个问题是否在Python 3.x中得到了解决。当我使用import os、del os、dir()时,os模块就不存在了(至少不可见、不可用)。它走了吗?
发布于 2014-02-07 22:44:57
sys.modules仍然保留对该模块的引用。
>>> import six
>>> del six
>>> sys.modules["six"]
<module 'six' from '/usr/lib64/python3.3/site-packages/six.py'>sys.modules仍然拥有一个引用。所以我也不认为你可以在Python3.3中卸载一个模块。
https://stackoverflow.com/questions/21630060
复制相似问题