文档章节

如何离开/退出/停用Python virtualenv

 技术盛宴
发布于 2019/12/07 21:15
字数 573
阅读 15
收藏 0

我正在使用virtualenv和virtualenvwrapper。 我可以使用workon命令在virtualenv之间切换。

me@mymachine:~$ workon env1
(env1)me@mymachine:~$ workon env2
(env2)me@mymachine:~$ workon env1
(env1)me@mymachine:~$ 

但是,如何退出所有虚拟机并再次在我的真实计算机上工作? 现在,我唯一要回到的方式

me@mymachine:~$ 

是退出外壳并开始一个新的外壳。 真烦人。 有没有什么要执行的命令,如果是的话,这是什么? 如果这样的命令不存在,我将如何创建它?


#1楼

在处理安装程序脚本时,我遇到了同样的问题。 我看了一下bin / activate_this.py做了什么,并将其反转了。

例:

#! /usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys

# Path to virtualenv
venv_path = os.path.join('/home', 'sixdays', '.virtualenvs', 'test32')

# Save old values
old_os_path = os.environ['PATH']
old_sys_path = list(sys.path)
old_sys_prefix = sys.prefix


def deactivate():
    # Change back by setting values to starting values
    os.environ['PATH'] = old_os_path
    sys.prefix = old_sys_prefix
    sys.path[:0] = old_sys_path


# Activate the virtualenvironment
activate_this = os.path.join(venv_path, 'bin/activate_this.py')
execfile(activate_this, dict(__file__=activate_this))


# Print list of pip packages for virtualenv for example purpose
import pip
print str(pip.get_installed_distributions())

# Unload pip module
del pip

# Deactivate/switch back to initial interpreter
deactivate()

# Print list of initial environment pip packages for example purpose
import pip
print str(pip.get_installed_distributions())

我不确定100%是否可以正常使用。 我可能完全错过了一些东西。


#2楼

我定义了一个别名 workoff ,与workon相反:

alias workoff='deactivate'

很容易记住:

[bobstein@host ~]$ workon django_project
(django_project)[bobstein@host ~]$ workoff
[bobstein@host ~]$

#3楼

使用:

$ deactivate 

如果这不起作用,请尝试

$ source deactivate

任何知道Bash source如何工作的人都会认为这很奇怪,但是围绕virtualenv的一些包装器/工作流将其实现为source activate的补充/对应。 你的旅费可能会改变。


#4楼

要激活Python虚拟环境:

$cd ~/python-venv/
$./bin/activate

停用:

$deactivate

#5楼

您可以使用virtualenvwrapper为了缓解你的工作方式virtualenv

安装virtualenvwrapper

pip install virtualenvwrapper

如果使用的是标准外壳,则使用Oh My Zsh打开~/.bashrc~/.zshrc .zshrc 。 添加这两行:

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

要激活现有的virtualenv,请使用命令workon

$ workon myenv
(myenv)$

为了停用您的virtualenv:

(myenv)$ deactivate

这是我的教程 ,逐步介绍了如何安装virtualenv和virtualenvwrapper。

本文转载自:https://stackoom.com/question/49ju/如何离开-退出-停用Python-virtualenv

粉丝 0
博文 781
码字总数 0
作品 0
深圳
高级程序员
私信 提问
MacOS安装Tensorflow,在PyCharm运行开发

在之前的文章介绍了如何在Docker安装Tensorflow和运行代码,但是遇到的问题也很显著,我们编写的代码没有无法直观看到静态错误,无法得知语法是否错误,必须运行过后才可以看到,同时也无法D...

ImWiki
2018/05/12
0
0
python虚拟环境 virtualenv

python虚拟环境 virtualenv virtualenv为Python项目创建虚拟环境,让不同的项目使用不同的环境,不会产生影响。 virtualenvwrapper是对virtualenv的封装,使用更方便。 安装 创建虚拟环境目录...

xiaobai1315
2019/07/17
35
0
python 常用模块之virtualenv

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。 如果我们要同时开发多个应用程序,那这些应用程序都会共用...

展菲
2019/08/20
0
0
Virtualenv和Virtualenvwrapper的配置使用

virtualenv is a tool to create isolated Python environments. virtualenv是用来创建一个独立的Python虚拟环境的工具,通过virtualenv可以创建一个拥有独立的python版本和安装库的虚拟开发...

有余力则学文
2017/10/31
124
0
使用virtualenv和virtualenvwrapper创建多版本python环境

virtualenv为python下用来创建虚拟python环境的工具,可以指定一个目录单独创建一个虚拟的python环这里输入代码境,防止多项目的库冲突 virtualenvwrapper封装了virtualenv,使virtualenv更加...

子夜闻雪
2016/12/16
168
0

没有更多内容

加载失败,请刷新页面

加载更多

Kettle自定义jar包供javascript使用

我们都知道 Kettle 是用 Java 语言开发,并且可以在 JavaScript 里面直接调用 java 类方法。所以有些时候,我们可以自定义一些方法,来供 JavaScript 使用。 本篇文章有参考自:https://www...

CREATE_17
昨天
82
0
处理CSV文件中的逗号

我正在寻找有关如何处理正在创建的csv文件的建议,然后由我们的客户上传,并且该值可能带有逗号(例如公司名称)。 我们正在研究的一些想法是:带引号的标识符(值“,”值“,”等)或使用|...

javail
昨天
79
0
如何克隆一个Date对象?

将Date变量分配给另一个变量会将引用复制到同一实例。 这意味着更改一个将更改另一个。 如何实际克隆或复制Date实例? #1楼 简化版: Date.prototype.clone = function () { return new ...

技术盛宴
昨天
73
0
计算一个数的数位之和

计算一个数的数位之和 例如:128 :1+2+8 = 11 public int numSum(int num) { int sum = 0; do { sum += num % 10; } while ((num = num / 10) > 0); return sum;......

SongAlone
昨天
124
0
为什么图片反复压缩后普遍会变绿,而不是其他颜色?

作者:Lion Yang 链接:https://www.zhihu.com/question/29355920/answer/119088684 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 业余版概要:安卓的...

shzwork
昨天
71
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部