diff --git a/wiki/programming-language/Python/进阶/项目实践/虚拟环境/pipenv.md b/wiki/programming-language/Python/进阶/项目实践/虚拟环境/pipenv.md new file mode 100644 index 00000000..e8b14796 --- /dev/null +++ b/wiki/programming-language/Python/进阶/项目实践/虚拟环境/pipenv.md @@ -0,0 +1,135 @@ +--- +title: pipenv +description: Python pipenv 虚拟环境 +keywords: +- Python +- pipenv +- 虚拟环境 +tags: +- Python +sidebar_position: 5 +author: 7Wate +date: 2023-01-18 +--- + +## 简介 + +pipenv 是一个 Python 包和环境管理工具,用于管理项目的依赖关系和创建虚拟环境。它的目的是简化 Python 包管理和环境管理的过程,使其变得更容易和更可靠。 + +pipenv 是一个 Python 包和环境管理工具,用于管理项目的依赖关系和创建虚拟环境。它的目的是简化 Python 包管理和环境管理的过程,使其变得更容易和更可靠。 + +pipenv 主要由两部分组成: + +- 一个命令行工具,用于管理依赖关系和创建虚拟环境。 +- 一个配置文件(Pipfile),用于描述项目的元数据和依赖关系。 + +安装 pipenv 需要通过 pip install pipenv 命令来安装。如果想要创建一个新的项目,可以使用 pipenv install 命令来创建虚拟环境和安装依赖。 + +在 pipenv 中,所有的依赖关系都被维护在一个名为 Pipfile 的文件中,这个文件用于描述项目的依赖关系。pipenv 会自动生成锁定文件(Pipfile.lock)来跟踪项目依赖关系的版本号,这样可以保证项目在不同环境中使用相同的依赖关系版本 + +另外 pipenv 支持从 requirements.txt 导入依赖项,并且也可以通过 pipenv lock 命令将项目依赖项导出到 requirements.txt 文件。总之 pipenv 是一个简单易用,支持创建虚拟环境和管理依赖关系的工具,适合于开发和维护 Python 项目的开发人员使用。 + +## 使用 + +安装前确保已经拥有了 Python3 和 Pip3,并且可以从 shell 中使用它。 + +### 1. 安装 + +```shell +pip install pipenv +pip3 install pipenv + +# 升级 +pip install --upgrade pipenv + +# 卸载 +pip uninstall pipenv +``` + +### 2. 使用 + +#### 2.1 虚拟环境 + +```shell +# 创建虚拟环境 +pipenv install + +# 指定 Python 版本 +pipenv --python 3 +pipenv --python 2.7.14 + +# 激活虚拟环境 shell +pipenv shell + +# 关闭虚拟环境 shell +exit +``` + +#### 2.2 依赖管理 + +```shell +# 安装依赖 +pipenv install + +# --dev 选项安装开发依赖 +pipenv install --dev + +# 从 requirements.txt 安装依赖 +pipenv install -r path/to/requirements.txt + +# 导出 requirements.txt +pipenv requirements > requirements.txt +pipenv requirements --dev > requirements.txt + +# 指定安装依赖版本,使用语义化版本控制方案 +pipenv install requests~=1.2 + +# 对比上下游依赖 +pipenv update --outdated + +# 升级所有依赖 +pipenv update + +# 升级指定依赖 +pipenv update + +# 删除依赖 +pipenv uninstall + +# 锁定依赖 +pipenv lock + +# 验证依赖 +pipenv verify +``` + +#### 2.3 依赖包源 + +```shell +pipenv install --pypi-mirror + +pipenv update --pypi-mirror + +pipenv sync --pypi-mirror + +pipenv lock --pypi-mirror + +pipenv uninstall --pypi-mirror +``` + +### 3. 命令 + +| 命令 | 用途 | +| ------------------------------ | ---------------------------------------------------- | +| pipenv install | 安装项目所需的包 | +| pipenv install [package] | 安装特定的包 | +| pipenv install --dev [package] | 安装用于开发环境的包 | +| pipenv uninstall [package] | 卸载特定的包 | +| pipenv lock | 生成锁定文件,用于确保项目在不同环境中的包版本一致性 | +| pipenv update | 更新项目中的所有包 | +| pipenv update [package] | 更新特定的包 | +| pipenv check | 检查项目中的包是否最新 | +| pipenv graph | 展示项目依赖关系图 | +| pipenv shell | 启动虚拟环境的 shell | +| pipenv run [command] | 在虚拟环境中运行命令 | +| pipenv clean | 删除虚拟环境中无用的包 |