背景
我正在做一个学术项目(基本上)分析一些“谁跟随谁”图表,并希望使用 Python Twitter API 包之一从 Twitter 获取一些真实数据(通过构建一些小数据集)以测试一些想法我有。
我有点粗心,安装了两个包:
a) python-twitter0.8.2
( http://pypi.python.org/pypi/python-twitter/0.8.2 )
b)twitter1.9.1
(http://pypi.python.org/pypi/twitter/1.9.1)
(a)python-twitter
在 pypi 中被调用, (b) 被调用twitter
,所以我将这样称呼它们。
这两个都import twitter
在 Python 解释器中被调用,但是当我写那一行时,我总是得到twitter
一个(如果我能弄清楚如何使用这个python-twitter
,我将能够继续,但仍然有相同的底层问题)。
问题
因为我不需要这个twitter
包,所以我决定用 pip 卸载它:
$ sudo pip uninstall twitter
这给出了输出:
Uninstalling twitter:
Proceed (y/n)? y
Successfully uninstalled twitter
(实际上,我尝试了同样的事情python-twitter
并得到了类似的回应)。
但是,在运行时pip freeze
,这两个包都会显示在已安装列表中!事实上,我仍然可以import twitter
在解释器中成功使用该命令。显然这些软件包尚未卸载。我很想知道如何卸载它们!
其他信息
我正在使用 Python 2.7 和 Ubuntu 12.04
当运行 IDLE 而不是 shell 解释器时,我键入help('modules')
,既不twitter
也不python-twitter
显示在列表中。输入help('modules')
shell 解释器时,我得到一个分段错误错误,解释器崩溃。这是错误:
>>> help('modules')
Please wait a moment while I gather a list of all available modules...
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning:
g_boxed_type_register_static: assertion `g_type_from_name (name) == 0' failed
import gobject._gobject
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: Warning:
g_boxed_type_register_static: assertion `g_type_from_name (name) == 0' failed
from gtk import _gtk
** (python:2484): CRITICAL **: pyg_register_boxed: assertion `boxed_type != 0' failed
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: Warning: cannot register
existing type `GdkDevice'
from gtk import _gtk
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: Warning: g_type_get_qdata:
assertion `node != NULL' failed
from gtk import _gtk
Segmentation fault (core dumped)
为什么其他问题没有为我解决这个问题:
我查看了pip freeze lists uninstalled packages上的类似帖子,但没有遇到同样的问题。
$ sudo which pip
/usr/bin/pip
$ which pip
/usr/bin/pip
这是相同的输出。此外,$ sudo pip freeze
给出与 相同的输出$ pip freeze
。
很感谢任何形式的帮助!