1. virtualenv

每个Python应用可能需要各自拥有一套“独立”的Python运行环境。虚拟环境 就是用来为一个应用创建一套“隔离”的 Python运行环境

virtualenv

virtualenv 的基本用法

A tool for creating isolated 'virtual' python environments.

查看是否已经安装过 virtualenv

pip list

安装 virtualenv

pip install virtualenv

使用 virtualenv 创建一个 Python 虚拟环境

# 创建使用系统默认Python 版本的虚拟环境
virtualenv myenv

# 创建指定 Python 版本的 虚拟环境
virtualenv -p C:\Python37\python.exe myenv

cd myenv

# 进入虚拟环境
# powershell 默认不允许执行未签名的脚本,为了能成功进入虚拟环境,请先执行:
# Set-ExecutionPolicy -Scope CurrentUser
# ExecutionPolicy: RemoteSigned
.\Scripts\activate

成功进入虚拟环境的标志是,在命令提示符前面显示 用括号包裹的 Python 虚拟环境名:(myenv) PS D:\code\myenv

查看虚拟环境下的pip安装包

pip list

可以看到只有 pip , setuptools , wheel 三个默认安装包

退出虚拟环境

# 在虚拟环境的任意目录下
deactivate

virtualenvwrapper

virtualenvwrapper 基于 virtualenv, 可以更方便的管理 Python 虚拟环境, 如果使用 virtualenvwrapper-win 作为 Python 虚拟环境的管理工具,完全可以不必安装 virtualenv

需要注意的是, virtualenvwrapper 在 Windows 系统中 只能通过 cmd 才能正常使用

安装 virtualenvwrapper

# 非Windows
# pip install virtualenvwrapper

# Windows
pip install virtualenvwrapper-win

创建并进入虚拟环境

mkvirtualenv myenv

# 指定 Python 版本创建 虚拟环境
mkvirtualenv --python=D:\\app\\python37\\python.ext myenv

通过以上命令创建的虚拟环境,会统一储存在 C:\Users\Administrator\Envs\

如果想更改虚拟环境储存的目录,需要设置一个 WORKON_HOME 的系统环境变量,

指定虚拟环境存放目录(默认虚拟环境创建在C盘)
- 设置系统环境变量WORKON_HOME 变量值envs
- 步骤:计算机右键 > 属性 > 高级系统设置 > 环境变量 > 系统变量 > 新建


变量值表示虚拟环境要存放的目录,可以自定义。系统环境变量设置好之后需要重启电脑才能生效。

进入虚拟环境

# 可以在任意目录,下切换虚拟环境
# 注意, 该命令在powershell 终端无效, 在 cmd 中才有效果
workon myenv

进入虚拟环境

# 可以在任意目录,下切换虚拟环境
# 注意, 该命令在powershell 终端无效, 在 cmd 中才有效果
workon myenv

删除虚拟环境

rmvirtualenv myenv

查看所有虚拟环境

lsvirtualenv

进入当前虚拟环境所在的目录

cd virtualenv

Pycharm 与 virtualenvwrapper 的配合

pycharm 本身集成了 virtualenv, 创建新项目时会要求生成虚拟环境, 只要把pycharm生成的虚拟环境安装到 virtualenvwrapper 的虚拟环境目录 ,那么 virtualenvwrapper 同样可以管理 Pycharm生成的是虚拟环境


 

虚拟环境进入

1.

workon

显示如下

(myenv) C:\Users\yys53\OneDrive\python\git\blog\blog>workon

Pass a name to activate one of the following virtualenvs:
==============================================================================
myenv

然后

workon myenv

 

2.pipenv

pipenv发布于2017年1月,它是一种Python依赖管理工具,你可以把它看做是pip和virtualenv的组合体,它基于Pipfile的依赖记录方式,用于替代旧的记录方式requirements.txt。

pipenv会自动帮你管理虚拟环境和依赖文件,并且提供一系列命令和选项来帮助你实现各种依赖和环境管理相关的操作。简而言之,它更方便、完善和安全。

安装

pip3 install pipenv

python3 -m pip install pipenv

sudo apt install pipenv


安装完成可以通过命令pipenv --version检测安装是否成功

pipenv的常用命令

创建环境
pipenv install

如果报错(乌班图会出现)

pipenv:未找到命令

或者报错

TypeError: 'NoneType' object is not subscriptable

vim ~/.profile

 # 在底部添加以下语句

PYTHON_BIN_PATH="$(python3 -m site --user-base)/bin"
PATH="$PATH:$PYTHON_BIN_PATH" 
source ~/.profile

或者报错

Warning: Python 3.6 was not found on your system…Neither 'pyenv' nor 'asdf' could be found to install Python.You can specify specific versions of Python with:
 

pipenv install --three

也可以把python命令指向python3


上述命令会生成Pipfile和Pipfile.lock,使用pipenv创建虚拟环境,自动生成一个随机的虚拟环境目录名。

如果在windows系统下执行命令,生成的虚拟环境在C:\Users\用户名\.virtualenvs文件夹下。

一般虚拟环境目录名的前缀是你创建环境时所在的项目目录名,如在myblog目录下执行命令,虚拟环境的目录名称就是myblog-Gtn4e1q9,后半部分为随机字符串。

运行py文件
pipenv run python xxx.py
激活虚拟环境
pipenv shell


创建环境后会自动进入到虚拟环境中,当退出虚拟环境重新进入到虚拟环境则需要执行以上命令。

安装依赖包到虚拟环境
pipenv install requests


不管是否激活虚拟环境,都可以执行pipenv install 库名来安装。

查看已经安装的模块
pipenv graph
卸载已安装的模块
pipenv uninstall requests
获取当前虚拟环境的位置
pipenv --venv
寻找当前项目的根目录
pipenv --where
通过requirements.txt文件安装模块
pipenv install -r requirements.txt

删除虚拟环境

首先进入需要删除的虚拟环境所对应的文件夹主目录下,然后在此目录下打开cmd窗口,使用命令pipenv --rm,使用命令之后,该文件夹对应的虚拟环境即会被删除。

pipenv --rm