Python创建虚拟环境和包安装
Python创建虚拟环境和包安装venv创建虚拟环境进入虚拟环境使用 pip 管理包virtualenv为什么需要使用虚拟环境但你有多个项目,他们同时依赖一个包,但是依赖的版本不同的时候,就可以用到虚拟环境,可以可以解决包版本冲突的问题,类似于conda。venvPython用于创建和管理虚拟环境的模块称为 venv.venv通常会安装你可用的最新版本的Python。如果系统上已经有多个版本的Py
Python创建虚拟环境和包安装
为什么需要使用虚拟环境
但你有多个项目,他们同时依赖一个包,但是依赖的版本不同的时候,就可以用到虚拟环境,可以可以解决包版本冲突的问题,类似于conda。
venv
Python用于创建和管理虚拟环境的模块称为 venv.venv
通常会安装你可用的最新版本的Python。如果系统上已经有多个版本的Python,可以通过运行python3或你想要的任何版本来选择特定的 Python 版本。当你需要指定具体版本时,你可能需要使用另一个包来帮助你指定你需要的版本,那就是virtualenv
,这个后面再说。
创建虚拟环境
在终端运行:
python -m venv test-env
# 当同时有python2和3时
python3 -m venv test-env
当你运行此命令的路径上不存在 test-env
目录时,则会创建目录,并在其中创建包含 Python 解释器、标准库和各种支持文件的副本的目录。
注意:上面的创建虚拟环境的命令,python
对应的版本即是虚拟环境创建的版本。
进入虚拟环境
Windows:
test-env\Scripts\activate.bat
Linux:
source test-env/bin/activate
进入之后会在命令行前面带(test-env)
,
查看已经安装好的包
pip list
只有两个最基础的包用于安装其他包,pip版本有点低,需要手动升级
python -m pip install --upgrade pip
使用 pip 管理包
现在可以使用pip安装项目需要的其他包
要退出环境只需要:
deactivate
virtualenv
前面提到如果需要指定版本的Python,而本地还没有对应版本的时候,则需要使用virtualenv
安装:
pip install virtualenv
创建环境:
virtualenv test-env2
这个命令会找到一个python
解释器来创建这个虚拟环境,默认情况下,与virtualenv运行的python
相同,但是我们可以通过-p
或者--python
参数更改它。
创建将虚拟环境标记为被版本控制系统(目前只支持Git)忽略的文件。打开test-env2
文件夹,可以看到了创建了一个.gitignore
文件。
指定使用的python
Windows:
virtualenv -p C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe test-env3
Linux:
virtualenv -p /usr/bin/python test-env3
虽然这两种方法都可以很方便的创建虚拟环境,但是前提是对应的版本必须在本地已经安装过了,而且一旦本地的版本升级,对应依赖的虚拟环境可能会出现不可用的情况。而且创建的环境散落在各个项目的文件夹中,不便于统一管理。
pyenv据说可以解决上面提到的不足
pyenv
pyenv
就到这里吧,这个pyenv大概看了下就不继续了解了。
总的来说,conda虽然会占用大量的磁盘空间,但是换来的是更加直接好的的体验,而venv或virtualenv则更加节省空间,也会让项目的环境更加干净。各有各的优缺点吧。
写这篇博客,是应为在某乎上看到对于虚拟环境和conda的一些争论,有的人力推conda,有的人全盘否定conda,主张Python官方的是最NB的。因为平时虚拟环境用的少,于是乎自己了解一波,听别人der der der,不如自己试一试。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)