win10 安装 virtualenv 以及 virtualenvwrapper (针对 powershell 和 cmd 都可以使用的较全方案)

写在前面

win10 powershell 在使用习惯上比较贴近ubuntu、centos 等 linux 系统。但是 virtualenv 针对 powershell 并不能很好的使用(workon <虚拟环境名>不能进入指定的虚拟环境中); cmd 虽然可以执行以上命令, 但是 cmd 并不是很好用。

1. 配置cmd

安装 virtualenv

使用 pip 命令安装 virtualenv (此处不再赘述安装python的过程)

>>> pip install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple/

加上 “-i https://pypi.tuna.tsinghua.edu.cn/simple/” 是为了从国内清华源下载, 速度比较快~

配置环境变量

桌面右键"此电脑 --> 高级系统设置 --> 环境变量", 在"系统变量"中新建如下图所示条目:win10 安装 virtualenv 以及 virtualenvwrapper (针对 powershell 和 cmd 都可以使用的较全方案)_第1张图片

此时可以使用 virtualenv <虚拟环境名> 在 C:\Users\路径下创建一个以 虚拟环境名 命名的虚拟环境包, 要进入此虚拟环境需要进入该包中的 Scripts 目录下执行 activate 才可以进入虚拟环境(实在是麻烦, 万一虚拟环境比较多, 每次这样太麻烦了!)

所以就引出了 virtualenvwrapper 该工具是 virtualenv 的扩展管理包,用于更方便管理虚拟环境, 常用命令:

创建基本环境:	mkvirtualenv [环境名]

删除环境:		rmvirtualenv [环境名]

激活环境:		workon [环境名]

退出环境:		deactivate

列出所有环境:	workon 或者 lsvirtualenv [-b]

安装 virtualenvwrapper

>>> pip install virtualenvwrapper-win -i https://pypi.tuna.tsinghua.edu.cn/simple/

安装完后, 就可以在 cmd 中使用上方 virtualenvwrapper 的常用命令来操作虚拟环境了。

但此时 powershell 仍然不能正常使用, 就算进入C:\Users\\Scripts目录下也无法通过activate进入虚拟环境

2. 配置 powershell

初步实现

首先实现进入C:\Users\\Scripts目录下, 通过activate进入虚拟环境的办法。
以管理员方式运行 powershell 输入 Set-ExecutionPolicy RemoteSigned执行策略更改, 在弹出的[Y] 是(Y) [N] 否(N) [S] 挂起(S) [?] 帮助 (默认值为“Y”):提示后输入Y即可。
此时可以在C:\Users\\Scripts目录下, 通过 activate进入虚拟环境, 以及使用deactivate退出虚拟环境。

此时不足的地方就是不能使用 powershell 在任意位置使用workon或者lsvirtualenv来显示现有的虚拟环境, 以及通过 workon <虚拟环境名>进入指定的虚拟环境。

趋于完美

为什么叫趋于完美呢, 因为完成以下步骤后, 还是不能使用workon来显示现有的虚拟环境, 只能使用lsvirtualenv来显示, 就算是练练英语拼写吧。
解决方案就在该同性交友网站: VirtualEnvWrapper for Windows Powershell

步骤:
  1. 拉取该项目到本地(主要是直接下载所需的Install.ps1文件太慢了)
  2. Just use the Install.ps1 script:
    ./Install.ps1

  3. 使用方法

lsvirtualenv (alias: Get-VirtualEnvs) : List all Virtual environments
mkvirtualenv (alias: New-VirtualEnv) : Ceate a new virtual environment
rmvirtualenv (alias: Remove-VirtualEnv) : Remove an existing virtual environment
workon: Activate an existing virtual environment
Get-VirtualEnvsVersion: to display the current version.

完成以上步骤后, 就可以正常通过 cmd 和 powershell 来使用 virtualenv 了, 依然有一小部分的不足, 等有机会看看源码尝试修改一下吧~

你可能感兴趣的:(windows相关)