最初使用python时最头疼的就是安装各种第三方包,或者叫第三方库了,总是会莫名其妙出现错误。然后就是查资料,尝试,再查再试,有时候弄一晚上都解决不了。现在也算是python入门一段时间了了,发现安装是有一些通用办法的,如果pip安装不成功,手动下载安装,基本都是百试不爽。
1. 最直接简单的pip 安装
pip install xxx # xxx为库名
pip install xxx==版本号 # 特定版本号的xxx安装
这种办法可能有两种情况出错。
一是网络状态不好,错误显示超时timed out。网上有很多解决办法,比如设置镜像来源、设置超时时间等,我都觉得太麻烦了。我的解决方式很粗暴,就是多试两遍,通常就能成功。但是如果再不行,可以用下面第2种安装办法,基本不会有什么差错。
二是明明显示安装成功了,import xxx以后还是显示ImportError: No module named xxx。通常针对每一种库安装时出现的问题在网上搜都会有不同的解决方案,一种一种试下来特别费事,弄完也不一定安装的上,这时候也可以直接用下面第2种安装办法。
2. 手动下载安装
在官网下载相应版本的安装文件,用命令安装。
具体方法是:在命令里定位到文件所在目录,用pip install 文件名,记得输入加后缀的完整文件名即可。
mac
加入安装文件在下载目录中,打开terminal,输入
cd ~/Downloads # 当前目录转到Downloads
ls # 列出当前目录下的所有文件名
pip install xxxxxx.whl # 安装,也可能是xxxxxx.tar.gz
windows
方法一: 用cmd打开命令窗口,假如安装文件在E盘的folder_name文件夹里,输入
E: # 进入E盘
dir # 列出当前目录下的所有文件名
cd folder_name # 进入folder_name文件夹
pip install xxxxxx.whl # 安装,也可能是xxxxxx.tar.gz
方法二:打开安装文件所在文件夹,假如安装文件在E盘的folder_name文件夹里,即打开folder_name文件夹,按住shift在空白处用鼠标点击右键,点击“在此处打开powershell窗口”(按下快捷键s),输入 “pip install 文件名” 进行安装即可。
使用安装文件安装库基本不会出现问题,如果提示缺少其他模块的环境,就继续下载这个模块安装就可以了。
曾经还遇到一个奇葩的情况,不管怎么安装pyglet,运行后都提示NameError: name 'PUINT' is not defined,查了很久在官网上发现一个帖子写的这是最新版本存在的问题,安装前一个版本就解决了。
所以剩下的就是具体问题具体分析了。
比如,有一回更新包的时候,使用pip install xxx --upgrade,显示报错 “ERROR: Cannot uninstall 'xxx'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall”,作为小白,其实也不知道后台具体出现了什么问题,导致无法安装,不过直接百度报错内容,就可以出来解决方案,即直接使用sudo强制重装:
sudo pip install --ignore-installed xxx
还有很多安装报错或者编程过程中遇到报错的解决办法,直接在 Stack Overflow 里面搜索,得到的内容会更有针对性。
完