在Python 3.x中卸载模块

时间:2014-02-07 14:19:14

标签: python python-3.x

我很清楚,Python 2中没有用于卸载模块的干净解决方案,这是一个已知错误,已设置为已更正。

帖子:

How do I unload (reload) a Python module? Remove an imported python module

2009年和2010年的

证实了对卸载模块缺乏支持。

我想知道这是否在Python 3.x中得到了解决。当我这样做时,import osdel osdir()os模块不存在(至少不可见,可用)。它消失了吗?

1 个答案:

答案 0 :(得分:-1)

sys.modules仍然保留对该模块的引用。

>>> import six
>>> del six
>>> sys.modules["six"]
<module 'six' from '/usr/lib64/python3.3/site-packages/six.py'>

sys.modules仍然拥有引用。所以我认为你不能在Python 3.3中卸载模块。