前言

在开发python的应用程序的时候,有时候会遇到依赖包的版本问题,比如之前开发tensorflow应用的时候需要用到python3.5以下的版本(还是python3),但是日常做其它应用的时候用的是python3.7,有时候还会存在python2于python3.7之间的版本并存的问题,甚至时候后自己安装了一个python版本与anaconda默认安装版本的选择问题....

虚拟环境 Virtualenv

主要用于解决上面提到的问题,同时也方便管理环境,在使用vscode编辑代码的时候使用虚拟环境,启动调试代码也会快一些

安装

pip install virtualenv

# pip 是一种python的包管理工具,可以很方便的安装、更新、删除python的第三方包,同时也能解决包之间的相互依赖关系 一般安装了python运行环境的电脑(windows)都可以在cmd 输入以上指令安装

新建虚拟环境

virtualenv myenv

# 以上指令可以创建并且进入python虚拟环境,默认使用的python环境

# 新建的虚拟环境默认在 C:\Users\\目录下

cmd切换conda python虚拟环境 cmd进入python虚拟环境_virtualenv

启动

# 除了以上指令进入,也可以将目录切换到虚拟环境的安装目录 启动activate.bat 文件启动

cmd切换conda python虚拟环境 cmd进入python虚拟环境_virtualenv_02

退出

# 先使用exit()函数退出python,再使用 deactivate.bat 退出虚拟环境

cmd切换conda python虚拟环境 cmd进入python虚拟环境_virtualenv_03

配置

# 在创建虚拟环境的时候可以添加一些参数,个性化定制虚拟环境

eg: virtualenv myenv1 --python2.7 # 将会使用python2.7版本创建虚拟环境

虚拟环境管理

# 以上的虚拟环境依然不方便管理

# 可以安装一个 virtualenvwrapper

# 安装

pip install virtualenvwrapper-win # windows

pip install virtualenvwrapper # linux

创建

cmd >

mkvirtualenv

# 同样的创建之后自动进入

# 创建的目录为 C:\Users\\Envs\

cmd切换conda python虚拟环境 cmd进入python虚拟环境_python_04

# 默认的创建目录可以修改 新建以下系统变量 然后重新创建一个虚拟环境 这样就创建到了其他路径了 ,同样的可以使用 --python设置python的版本

cmd切换conda python虚拟环境 cmd进入python虚拟环境_windows创建python虚拟环境_05

cmd切换conda python虚拟环境 cmd进入python虚拟环境_python_06

cmd切换conda python虚拟环境 cmd进入python虚拟环境_虚拟环境_07

查看启用的虚拟环境

cmd切换conda python虚拟环境 cmd进入python虚拟环境_windows创建python虚拟环境_08

安装包

# 虚拟环境中安装的方式和默认的pip安装一样的只是需要进入到虚拟环境才能在其中安装包

cmd切换conda python虚拟环境 cmd进入python虚拟环境_python_09

使用

# 当前环境的包 因为vscode默认使用用户目录下的虚拟环境所以我将自定义路径删除了

cmd切换conda python虚拟环境 cmd进入python虚拟环境_virtualenv_10

# 全局环境的包 我们已pygame为例 pygame存在于全局里面,但是刚刚建立虚拟环境里面没有这个包

cmd切换conda python虚拟环境 cmd进入python虚拟环境_virtualenv_11

# vscode切换python的运行环境

# 在安装了python插件的vscode中点击左下角切换,如果虚拟环境没有列出 重启vscode试一下

cmd切换conda python虚拟环境 cmd进入python虚拟环境_windows创建python虚拟环境_12

# 原来的环境 运行一段pygame代码 ----- ok

cmd切换conda python虚拟环境 cmd进入python虚拟环境_python_13

# 使用虚拟环境运行代码 ---Error

cmd切换conda python虚拟环境 cmd进入python虚拟环境_python_14