- 如果
install命令后没有包名,则[packages]中所有的包都会被安装
pip3 install pipenv
创建虚拟环境
- 首先要进入项目的目录
- 查看当前的虚拟环境
pipenv --venv
如果没有虚拟环境,会提示 - 根据指定解释器(系统本身要有该python版本),创建虚拟环境
pipenv --python 3.6
此时会在该目录下创建虚拟环境,并复制系统的python 3.6
PipenvTest-VSTVh89E/bin中存放了pip、pip3、pip.6、python、python3、python3.6
此时的虚拟环境只有python的内置包,以及pipwheelstuptools包
进入虚拟环境
-
pipenv shell
该方法将这个路径加入到了全局换将变量前面,所以会优先调用虚拟环境(类似于virtualenv中的 source env/bin/activate)
可以通过linux中的which查看python的命令的执行路径,是否已经变成了虚拟环境 -
pipenv install package
此时会生成Pipfile和Pipfile.lock文件
Pipfile文件是TOML格式文件,记录了依赖包的基本信息
Piplock文件则记录了更详细的系信息,比如在安装时如果没有指定package版本时,Pipfile中是将版本记录成*的,但是Pipfile.lock则会记录当时的版本,如果该包更新了新版本,该环境还是会根据Pipfile.lock文件来安装特定的版本.
所以不要修改pipfile.lock文件
pipenv install requests==1.2 # 使用~=则相当于1.*pipenv install "requests>=1.4" # 只安装等于或者大于 1.4.0 的版本pipenv install "requests<=2.13" # 只安装小于或者等于 2.13.0 的版本pipenv install "requests>2.19" # 安装 2.19.1 版本但是不安装 2.19.0 版本pipenv install -r path/to/requirements.txt从requirements中安装三方包pipenv install --pypi-mirror <mirror_url>指定镜像安装
** 部署 **
pipenv install安装.lock所有包,并且更新的最新
pipenv install --deploy,如果包不是最新的则会安装失败
pipenv sync:严格按照.lock文件夹中的包版本进行安装
退出虚拟环境
exit
常用命令
| 参数 | 描述 |
|---|---|
| –where | 查看项目目录 |
| –venv | 查看虚拟环境路径(Pipenv会把虚拟环境统一方法在virtualenvs中,而不是在项目中) |
| –py | 查看python解释器路径 |
| –rm | 删除虚拟环境 |
| –bare | |
| –completion | ?? |
| –python TEXT | 指定虚拟环境版本 |
| –site-packages | 加载系统的第三方包(一般不使用) |
| shell | 进入虚拟环境 |
| install | 虚拟环境安装第三方模块,后面加-dev参数,这时安装的包记录在[dev-packages]下,在开发环境时不会输出.如果后面不加具体的包则会从.lock文件中加载 |
| uninstall | 卸载包,--all参数会删除所有的包 |
| graph | 查看当前虚拟环境依赖的关系 |
| lock | 生成lock文件 |
| clean | 清理虚拟环境依赖,值保留.lock文件中的依赖 |
| run | 虚拟环境运行 |
| sync | 安装.lock文件中的所有依赖 |
| update | 升级依赖包.默认更新所有包,给<pkg>则更新指定包,--outdated参数查看过期的依赖包 |
更改虚拟环境的安装路径
https://blog.csdn.net/swinfans/article/details/89305301
参考:
https://cuiqingcai.com/5846.html
https://blog.csdn.net/haiyanggeng/article/details/82382993
https://pypi.org/project/pipenv/
https://blog.csdn.net/swinfans/article/details/89305301
本文详细介绍Pipenv工具在Python项目中管理虚拟环境及依赖包的方法,包括虚拟环境的创建、激活、依赖包的安装与管理等核心操作,以及Pipfile与Pipfile.lock文件的作用。

2174

被折叠的 条评论
为什么被折叠?



