用pip安装python第三方包的时候显示错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用pip安装python第三方包的时候显示错误相关的知识,希望对你有一定的参考价值。

win7,python33,已经安装mingw
开始第一次安装的时候出现
unable to find vcvarsall.bat
第二次重新输入pip install XXX之后,就是↓

文字版:
pip can't proceed with requirement 'numpy' due to a pre-existing build directory location: C:\users\damini~1\appdata\local\temp\pip_build_Administrator\numpy
This is being responsible and not assuming it can delete this.
Please delete it and try again.
Storing debug log for failure in C:\Users\Administrator\pip\pip.log

PS:用很多个第三方包尝试过了,都是这样的TT

然后,用easy_intall命令安装,一直出现“unable to find vcvarsall.bat”,倒不会出现红字内容

pip 不是在python解释器中运行。而是在windows的命令行下运行,pip在Python\\Scripts目录

下,cmd,cd到该目录,然后输入pip install googlemaps 。

python的及其第三方库的安装,pip的使用:

    选择合适的版本直接点击安装,选择安装目录,直接下一步。

    安装完成后,需要配置环境变量;打开环境变量设置,在Path后面加入“;D:\\Python27";及

python在你电脑里的安装目录位置。

3.检查是否配置成功,打开cmd,输入python,显示如图所示,即为安装成功。

4.第三方库的安装,由于最新版本的python已经自带pip,因此,使用pip install 安装命令,最

为简单,前提是电脑需要联网。打开cmd,进入你的python安装目录所在的文件夹中,并进入

Scripts文件(pip在Scripts目录下)。

5.使用pip install 命令安装第三方库,例如: pip install numpy接着就会自动下载所需文件,并

安装,最后提示你安装成功,可能会遇到pip版本过低的情况,按照提示升级pip的版本后,重

复以上操作,就可以完成安装。

参考技术A 一种解决办法,供参考:
http://my.oschina.net/zhangdapeng89/blog/54407

windows下配置编译环境本身就是个麻烦的事情,如果还不行,建议直接安装win下的二进制版本:
http://sourceforge.net/projects/numpy/files/

个人建议,要像模像样用python还是在linux下吧。

Python虚拟环境常用工具使用

Python虚拟环境工具

我们在使用Python开发的时候会使用pip来安装第三方包,但是由于pip的特性,系统中只能安装每个包的一个版本。但是在实际项目开发中,不同项目可能需要第三方包的不同版本或不同的第三方包,Python的解决方案就是虚拟环境。顾名思义,虚拟环境就是虚拟出来的一个隔离的Python环境,每个项目都可以有自己的虚拟环境,用pip安装各自的第三方包,不同项目之间也不会存在冲突。创建虚拟环境需要一些工具。

virtualenv

virtualenv是一个创建隔绝的python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用python工程所需的包。

安装工具

$python -m pip install virtualenv -i https://pypi.douban.com/simple
Installing collected packages: virtualenv
Successfully installed virtualenv-16.7.9

创建虚拟环境

$cd c:allenv # 假设要创建的虚拟环境目录都保存在c:allenv路径下
$virtualenv -p python --no-site-packages env1 
# -p 指定python解释器,前提是配置了系统环境变量,通过python能查找到python安装的路径
# --no-site-packages 指定是完全纯净的环境,不从本地python的实体环境中继承任何第三方模块
# --system-site-packages 从本地的python实体环境中继承所有已安装的第三方模块
c:allenv>virtualenv -p python --no-site-packages env1
Running virtualenv with interpreter D:ProgramPython37python.exe
Already using interpreter D:ProgramPython37python.exe
Using base prefix 'D:\Program\Python37'
New python executable in c:allenvenv1Scriptspython.exe
Installing setuptools, pip, wheel...
done.

激活虚拟环境

c:allenv>cd env1/Scripts # 进入虚拟脚本目录
c:allenvenv1Scripts>activate # 通过activate命令激活虚拟环境
(env1) c:allenvenv1Scripts> # 在这里就和实体python环境一样,可以何意的安装第三方模块

使用虚拟环境

(env1) c:allenvenv1Scripts>pip install django==1.11.16 -i https://p
ypi.douban.com/simple #安装django包
(env1) c:allenvenv1Scripts>pip list # 查看虚拟环境安装的模块,可以退出虚拟环境查看实体环境会不一样
Package    Version
---------- -------
Django     1.11.16
pip        19.3.1
pytz       2019.3
setuptools 44.0.0
wheel      0.33.6

退出虚拟环境

(env1) c:allenvenv1Scripts>deactivate # 通过deactivate命令退出虚拟环境
c:allenv>pip list # 退出虚拟环境之后且要返回到上一个目录,查看已安装的模块并没有虚拟环境中的django
Package    Version
---------- -------
pip        19.3.1
setuptools 41.2.0
virtualenv 16.7.9

virtualenvwrapper(linux)

virtualenvwrapper 是一个基于virtualenv之上的工具,它将所有的虚拟环境统一管理。

安装工具

$python -m pip install virtualenvwrapper -i https://pypi.douban.com/simple
Looking in indexes: https://pypi.douban.com/simple
Collecting virtualenvwrapper
Installing collected packages: virtualenv-clone, six, pbr, stevedore, virtualenv
wrapper
Running setup.py install for virtualenvwrapper ... done
Successfully installed pbr-5.4.4 six-1.13.0 stevedore-1.31.0 virtualenv-clone-0.5.3 virtualenvwrapper-4.8.4
# 1.配置virtualenvwrapper的环境变量,每次开机就启动
$vim ~/.bashrc
# 2.写入以下几行代码export 和source一样都是读取linux shell变量的命令
export WORKON_HOME=~/Envs   # 设置virtualenv的统一管理目录
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'   # 添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3     # 指定python解释器
source /opt/python36/bin/virtualenvwrapper.sh   # 这一步才是真正使用工具的步骤,执行virtualenvwrapper安装脚本
# 3.退出当前会话,重新登录linux
$logout
# 4.重新登录,查看是否可以使用virtualenvwrapper

$python -m pip install virtualenvwrapper-win -i https://pypi.douban.com/simple # windows下的话安装"virtualenvwrapper-win"这个包

创建虚拟环境

$mkvirtualenv  django115 # 创建名称为django115的虚拟环境
$mkvirtualenv  django2 # 创建名称为django2的虚拟环境
# --python 指定python的版本创建虚拟环境

激活/切换虚拟环境

$workon  django2 # 切换到django2的虚拟环境
$workon  django115 # 切换到django115的虚拟环境
$workon # 也可以查看当前的所有虚拟环境

进入虚拟环境的家目录

$cdsitepackages

退出虚拟环境

$deactivate

删除虚拟环境

$rmvirtualenv   django115

显示所有的虚拟环境

$lsvirtualenv

pipenv

pipenv 是 Pipfile 主要倡导者、requests 作者 Kenneth Reitz 写的一个命令行工具,主要包含了Pipfile、pip、click、requests和virtualenv。Pipfile和pipenv本来都是Kenneth Reitz的个人项目,后来贡献给了pypa组织。Pipfile是社区拟定的依赖管理文件,用于替代过于简陋的 requirements.txt 文件。

Pipfile的基本理念是:

Pipfile 文件是 TOML 格式而不是 requirements.txt 这样的纯文本。
一个项目对应一个 Pipfile,支持开发环境与正式环境区分。默认提供 default 和 development 区分。
提供版本锁支持,存为 Pipfile.lock。
click是Flask作者 Armin Ronacher 写的命令行库,现在Flask已经集成了它。

接下来,我们看看怎么使用它吧

安装工具

$python -m pip install pipenv -i https://pypi.douban.com/simple
Installing collected packages: virtualenv-clone, certifi, pipenv
Successfully installed certifi-2019.11.28 pipenv-2018.11.26 virtualenv-clone-0.5.3

创建虚拟环境

$cd allenvenv2
$pipenv install # 使用本地默认版本python创建虚拟环境
$pipenv --python 3.7 # 指定用python 3.7版本创建虚拟环境
$pipenv --python 3.7
Creating a virtualenv for this project…
Pipfile: C:allenvenv2Pipfile
Using D:/Program/Python37/python.exe (3.7.6) to create virtualenv…
[    ] Creating virtual environment...

激活虚拟环境

$pipenv shell

使用虚拟环境

(env2-bSoKIDGr) c:allenvenv2$pipenv install django==1.11.16 # 安装指定版本的第三方模块
$pipenv install flask # 安装不指定版本的第三方模块
$pipenv install pytest --dev # 只安装在开发环境才使用的包
$pipenv lock #把当前环境的模块lock住, 它会更新Pipfile.lock文件,该文件是用于生产环境的,你永远不应该编辑它
$pipenv install --ignore-pipfile # 创建和开发环境一样的环境咯,Pipfile.lock里记录了所有包和子依赖包的确切版本
$pipenv install --dev # 要在另一个开发环境做开发,则将代码和Pipfile复制过去,运行此命令
$pipenv --where # 显示目录信息
$pipenv --venv # 显示虚拟环境信息
$pipenv --py # 显示python解释器信息
$pipenv graph # 查看目前安装的库及其依赖
$pipenv check # 检查安全漏洞
$pipenv uninstall --all # 卸载全部包并从pipfile中移除
$pipenv uninstall package_name # 卸载指定包并从pipfile中移除

创建其他工具建立的虚拟环境

$pip freeze > requirements.txt # 首先打开之前的项目,将之前项目的虚拟环境导出到requirements.txt文件
$pipenv install -r requirements.txt # 将requirements.txt文件粘贴到到要创建环境的目录

退出虚拟环境

$exit

以上是关于用pip安装python第三方包的时候显示错误的主要内容,如果未能解决你的问题,请参考以下文章

关于python3包的安装问题?

Python第三方包的安装

在多版本python的pip的安装与对应包的安装

为啥pip安装第三方库时总出现红色代码?

记录一次安装包的不顺

python使用pip安装第三方库(工具包)速度慢超时失败的解决方案