首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >虚拟环境管理

虚拟环境管理

作者头像
以某
发布2023-03-07 14:12:00
发布2023-03-07 14:12:00
4920
举报
文章被收录于专栏:Jack96Jack96

Linux

虚拟环境的使用

和其他大多数现代编程语言一样,Python对包和模块的下载、存储以及管理有其自己的一套方法。Python的包一般存在几个地方,使用sys.path可以查看python包和模块的存放路径

代码语言:javascript
复制
import sys
print(sys.path)
Copy

输出结果:

代码语言:javascript
复制
['', 
 '/usr/lib/python36.zip',
 '/usr/lib/python3.6',
 '/usr/lib/python3.6/lib-dynload',
 '/usr/local/lib/python3.6/dist-packages',
 '/usr/lib/python3/dist-packages'
]
Copy

这里列出了python里查找包或者模块时的所有可用路径,其中''表示的是当前项目的目录,一般情况下,我们需要关注的是使用pip install指令下载的第三方资源包。这个第三方资源包被存放在了'/usr/local/lib/python3.6/dist-packages'目录下,这里就带来了一个问题,当我们同时开发多个工程时,不同的工程会将第三方的包存放在相同的路径下。这就意味着,如果有两个工程依赖同一个包,但是所需要的版本却不一样,比如工程A依赖v1.0.0,而工程B依赖v2.0.0。由于Python无法根据版本来区分包的安装路径,所以这里就会发生版本冲突。

安装virtualenv

virtualenv 是一个创建隔绝的Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。

代码语言:javascript
复制
pip install virtualenv
Copy

安装完成以后,可以使用命令快速的创建、激活虚拟环境。

代码语言:javascript
复制
cd my_project  # 进入到工程的工作目录
virtualenv .test  # 创建虚拟环境,并命名为test.此时会在my_project下多出一个test的文件夹
virtualenv -p /usr/bin/python3 .venv : 指定Python环境创建虚拟环境
source .test/bin/activate # 激活虚拟环境。此时,如果使用pip install安装的插件,都会被安装到当前虚拟环境
pip install flask  # 测试安装flask. flask会被安装到当前虚拟环境,而不是全局环境
deactive : 退出虚拟环境
Copy

安装virtualenvwrapper

安装virtualenv以后,已经可以创建和激活虚拟环境了,但是使用起来却不是那么的方便。我们可以在安装一个virtualenvwrapper工具,它可以更加方便的帮我们管理虚拟环境。

代码语言:javascript
复制
pip install virtualenvwrapper
Copy

安装完成以后,在~/.bashrc文件下添加以下内容:

代码语言:javascript
复制
export WORKON_HOME=~/.envs
source /usr/local/bin/virtualenvwrapper.sh
Copy

保存以后,再执行以下指令:

代码语言:javascript
复制
source ~/.bashrc
Copy

下面我们就可以很方便的管理虚拟环境了。

代码语言:javascript
复制
mkvirtualenv test  # 创建并切换到test虚拟环境
deactivate  # 离开test虚拟环境
rmvirtualenv test # 删除test虚拟环境
workon demo # 切换到demo虚拟环境
Copy

注意:若是pip3安装的virtualenv且pip3的软链接指向新安装的python3.7

代码语言:javascript
复制
1.在/usr/bin下面创建virtualenv的软连接
ln -s /usr/local/src/python37/bin/virtualenv virtualenv


2.在~/.bashrc中添加即可

export WORKON_HOME=~/.envs
source /usr/local/src/python37/bin/virtualenvwrapper.sh
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

(虚拟环境默认创建在~/.envs的文件夹中)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Linux
  • 虚拟环境的使用
    • 安装virtualenv
    • 安装virtualenvwrapper
      • 注意:若是pip3安装的virtualenv且pip3的软链接指向新安装的python3.7
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档