Python模块没有被正确删除

时间:2017-06-07 02:57:00

标签: python python-2.7 google-app-engine

不知怎的,我最终安装了2个名为'google'的不同模块。一个出现在python中的 site_packages 文件夹中,而我的自定义路径中的一个出现在 PYTHONPATH 中。 我想摆脱site_packages中的那个。所以我删除了该文件夹(根据其他SO答案)。但现在,我正面临这种奇怪的情况,它仍然在开始时加载错误

>>> import google; google.__path__
['/Library/Python/2.7/site-packages/google']
>>> google.__file__
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  AttributeError: 'module' object has no attribute '__file__'
>>> reload(google)
<module 'google' from '/custom_path/google-cloud-sdk/platform/google_appengine/google/__init__.pyc'>
>>> google.__path__
['/custom_path/google-cloud-sdk/platform/google_appengine/google'
>>> google.__file__
'/custom_path/google-cloud-sdk/platform/google_appengine/google/__init__.pyc'

所以基本上,第一次它仍然加载旧模块(没有文件),并且在重新加载时,它给出了正确的模块。

我的问题是如何完全删除旧版本,因为总是像这样重新加载模块是不可行的。

1 个答案:

答案 0 :(得分:0)

问题在于其他模块在某种程度上持有对谷歌模块的引用。我从谷歌删除了所有包并重新安装它们,之后它完美地工作。我还不确定为什么&amp;该模块如何被引用,所以如果有人也可以对它进行说明,那将会很感激。