python虚拟环境virtualenv的安装与使用

发布时间 - 2026-01-11 03:21:04    点击率:

同一台服务器上部署多个项目时,项目可能使用不同版本的django或者其它不同的python库,这种情况下可以使用virtualenv来创建独立的python运行环境,将不同项目的运行环境隔离出来。 

virtualenv可以创建一个拥有自己安装目录的环境,  能够方便的管理python版本和管理python库。

安装

pip install virtualenv

创建环境

基本命令:

virtualenv ENV

即在ENV目录创建了一个新的虚拟环境。

pip和setuptools已在虚拟环境中自动下载完毕,可以使用这些工具来下载python包。

下载的python包置于ENV/lib/pythonX.X/site-packages中。

当前使用的python解释器为ENV/bin/python。

激活与退出虚拟环境

激活命令:

$ source bin/activate

退出虚拟环境:

$ deactivate

删除虚拟环境

退出虚拟环境后删除目录即可:

(ENV)$ deactivate
$ rm -r /path/to/ENV

继承全局python库

使用以下命令可以创建继承使用/usr/lib/python2.7/site-packages下的python全局库的虚拟环境

virtualenv --system-site-packages ENV

不使用虚拟环境中的python解释器

如果不想或者不能使用虚拟环境中的python解释器bin/python,需要修改使用的python库的路径。

bin目录下有一个文件 activate_this.py:

"""By using execfile(this_file, dict(__file__=this_file)) you will
activate this virtualenv environment.

This can be used when you must use an existing Python interpreter, not
the virtualenv bin/python
"""

更改路径:

activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

生成可打包的环境

$ virtualenv --relocatable ENV

指定python版本

-p PYTHON_EXE, --python=PYTHON_EXE:指定生成的虚拟环境的python版本

virtualenv -p /usr/bin/python2.7 env

uwsgi中使用virtualenv

部署django项目时,可以使用uwsgi的几个选项来指定项目使用的虚拟环境,--home,--virtualenv,--venv,--pyhome选项,都可简写为-H。

在uwsgi配置文件中添加 virtualenv   =  <path to env>或者运行命令时   $ uwsgi -H myenv。


# python3  # virtualenv  # python  # python虚拟环境virtualenv  # python virtualenv虚拟环境配置与使用教程详解  # windows下python虚拟环境virtualenv安装和使用详解  # python中virtualenvwrapper安装与使用  # python之virtualenv的简单使用方法(必看篇)  # python虚拟环境virtualenv的使用教程  # python安装并使用virtualenv管理包的详细过程  # 可以使用  # 运行环境  # 几个  # 多个  # 一台  # 已在  # 创建一个  # 即在  # 配置文件  # 安装目录  # 有一个  # 情况下  # 器上  # 目录下  # setuptools  # source  # lib  # activate  # packages  # site 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 浅述节点的创建及常见功能的实现  制作电商网页,电商供应链怎么做?  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  网站建设要注意的标准 促进网站用户好感度!  香港服务器租用每月最低只需15元?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  装修招标网站设计制作流程,装修招标流程?  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  动图在线制作网站有哪些,滑动动图图集怎么做?  PHP正则匹配日期和时间(时间戳转换)的实例代码  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  如何在景安服务器上快速搭建个人网站?  如何快速完成中国万网建站详细流程?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  Laravel API资源类怎么用_Laravel API Resource数据转换  如何在阿里云域名上完成建站全流程?  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  微信小程序 scroll-view组件实现列表页实例代码  Android GridView 滑动条设置一直显示状态(推荐)  详解Android——蓝牙技术 带你实现终端间数据传输  详解Oracle修改字段类型方法总结  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  原生JS实现图片轮播切换效果  如何获取免费开源的自助建站系统源码?  无锡营销型网站制作公司,无锡网选车牌流程?  如何快速搭建安全的FTP站点?  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  如何在阿里云ECS服务器部署织梦CMS网站?  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  做企业网站制作流程,企业网站制作基本流程有哪些?  jQuery validate插件功能与用法详解  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  🚀拖拽式CMS建站能否实现高效与个性化并存?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  如何在搬瓦工VPS快速搭建网站?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  Java遍历集合的三种方式  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  Laravel如何使用withoutEvents方法临时禁用模型事件  简单实现Android文件上传  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  制作企业网站建设方案,怎样建设一个公司网站?