无法在python中导入已安装的软件包

高塔姆

我安装了pip(pip 1.5.4 from /usr/lib/python2.7/dist-packages(python 2.7))。我的python版本是2.7。

我安装了pygameapt-get install python-pygame并收到了一条成功消息。但是,当我尝试将其导入时python,收到以下消息:

ashish@Ashish-Notebook:~$ python
Python 2.7.11 (default, Jun  6 2016, 07:21:54) 
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygame
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pygame
>>> 

同样,我安装了Beautiful Soup by pip install BeautifulSoup,并且无法将其导入任何地方。而且,当我再次尝试安装时,会收到以下消息:

Requirement already satisfied (use --upgrade to upgrade): BeautifulSoup in /usr/local/lib/python2.7/dist-packages
Cleaning up...
ashish@Ashish-Notebook:~$

此外,当我得到已安装软件包的列表(按pip列表)时。我可以在该列表中看到pygame和beautifulsoup。

介子

问题在于,当您使用sudo apt-get install(或sudo pip install安装东西时,它们会安装到中的位置/usr,但是您从源代码编译的python已安装在中/usr/local当您python在提示符下键入时,实际上最终运行的python是已编译python -c 'import sys; print(sys.path)'的python (基于命令的输出),并且找不到安装在python中的python软件包。/usr目录。但是,Ubuntu附带了已经安装在正确位置的python(python 2和python 3),可以在其中找到已安装的软件包。因此,通常的建议是尽量不要混合使用这种安装方法。Ubuntu的官方存储库中提供了许多软件包,从而消除了自己进行大量编译的麻烦,并且通常建议尽可能通过apt安装软件。

也就是说,对于python软件包(例如Pygame和Beautiful Soup),事情可能会变得更加复杂混合pipapt-get可能导致麻烦的道路,所以一个办法让事情变得简单是坚持只用系统包管理器。如果由于软件包管理器没有所需的东西(或最新版本)而最终需要使用pip,则最好在虚拟环境中工作并将pip用于该虚拟环境中所需的所有python软件包。

为了告诉您的系统正确找到默认的系统python(python 2,这是您刚调用时的默认值python),请尝试重写符号链接,该符号链接会将python命令在提示符处路由到原始目的地:

sudo ln -s /usr/bin/python2.7 /usr/bin/python

希望这应该允许它找到您安装的python软件包。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法在Jupyter Notebook的Python3环境中导入已安装的软件包

无法导入已安装的软件包

与Anaconda一起安装了软件包,无法在Python中导入

软件包已安装但无法导入

无法在Pycharm中导入软件包

已安装软件包(Python PIL / Pillow),但无法导入

已创建私有软件包并安装了pip,但无法使用python导入

Python无法找到已安装的flask软件包

安装的Python脚本无法导入软件包模块

无法找到已安装的软件包

在已安装的Python包中导入

在SublimeText中导出已安装软件包的列表

无法在子模块中导入软件包

无法在TypeScript中导入NPM软件包(例如Faker)

Anaconda无法导入已安装的软件包matplotlib-venn

在Python中导入很少使用的软件包的最佳实践

在Python中导入软件包,属性错误

在Ubuntu中导入lxml软件包python时出错

点列表显示软件包已安装,但导入软件包会引发ImportError

无法安装python FFVideo软件包

Python无法安装软件包

同一名称空间中的软件包:无法在安装脚本中导入模块

从脚本导入已安装的软件包会引发“ AttributeError:模块没有属性”或“ ImportError:无法导入名称”

无法在npm中使用已安装的软件包

错误:无法立即加载已安装的软件包

eclipsefp和yesod:无法识别已安装的软件包

无法识别已安装的项目特定的nuget软件包

Pycharm无法找到已安装的软件包:keras

Emacs(24.4.1)无法打开已安装的软件包