标签: virtualenvwrapper

如何确定安装了哪个版本的 virtualenvwrapper?

我知道这which virtualenvwrapper.sh会找到 virtualenvwrapper bash 脚本。

但是,如何确定安装了哪个版本的 virtualenvwrapper?

python virtualenvwrapper

7
推荐指数
1
解决办法
3656
查看次数

virtOSalenvwrapper安装在mac OSX Lion上失败

在Mac OSX 10.7.5上mkvirtualenv失败:

$ mkvirtualenv tmp
Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
    working_set.require(__requires__)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: virtualenv==1.7.1.2
Run Code Online (Sandbox Code Playgroud)

用pip安装virtualenv virtualenvwrapper:

Downloading/unpacking virtualenv
  Downloading virtualenv-1.10.1.tar.gz (1.3MB): 1.3MB downloaded
  Running setup.py egg_info for package virtualenv

    warning: no files found matching '*.egg' under directory 'virtualenv_support'
    warning: no previously-included …
Run Code Online (Sandbox Code Playgroud)

macos virtualenv virtualenvwrapper

7
推荐指数
2
解决办法
7412
查看次数

使用tox与Anaconda python

在Ubuntu系统上,我试图用tox和多个python版本测试python包.我试图测试的一个python版本是64位Anaconda Python 2.7.在我开始使用Tox进行测试之前,我首先需要让virtualenv与Anaconda合作,因为Tox在内部使用virtualenv.

如您所见,virtualenv已安装在我的Anaconda环境中:

$ conda install virtualenv
Fetching package metadata: ....
Solving package specifications: ....................
# All requested packages already installed.
# packages in environment at /home/me/software/anaconda:
#
virtualenv                13.0.1                   py27_0  
Run Code Online (Sandbox Code Playgroud)

但是,尝试创建虚拟环境失败:

$ mkvirtualenv test
New python executable in test/bin/python
Installing setuptools, pip...
  Complete output from command /home/me/....envs/test/bin/python -c "import sys, pip; sys...d\"] + sys.argv[1:]))" setuptools pip:
  Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/me/.local/lib/python2.7/site-packages/virtualenv_support/pip-1.5.6-py2.py3-none-any.whl/pip/__init__.py", line 9, in <module>
  File "/home/me/.local/lib/python2.7/site-packages/virtualenv_support/pip-1.5.6-py2.py3-none-any.whl/pip/log.py", line 8, in …
Run Code Online (Sandbox Code Playgroud)

python virtualenv virtualenvwrapper tox anaconda

7
推荐指数
1
解决办法
1214
查看次数

一起使用 virtualenvwrapper 和 pyenv

$ pyenv virtualenv 3.8.0 tf12创建一个 virtualenv ,其中~/.pyenv/versions/3.8.0/envs/tf12包含我们使用安装到其中的包pip install。如果我们创建一个新的项目目录,例如mkdir myfolder && cd myfolder && pyenv local tf12,该项目目录将使用 tf12 环境包含的相同内核和包,因为我们使用了该pyenv local命令。

但我们也有 virtualenvs 和目录创建位于类似和 的mkproject mynewenv地方。工作区是我们放置笔记本、代码和脚本等的地方,相应的 virtualenv 使用执行时处于活动状态的全局 python 版本。~/.ve~/workspace.pynb.py.rmkproject mynewenv

这些使用 创建的 virtualenv 与mkproject mynewenv使用 创建的 virtualenv 是分开的pyenv virtualenv

我得出的结论是,我们不能将它们一起使用以获得更多可能性。它们是独立使用的。如我错了请纠正我。

python virtualenv virtualenvwrapper

7
推荐指数
1
解决办法
4861
查看次数

Creating Virtual environment using python 3.8 when python 2.7 is present

I am trying to create a virtual environment using mkvirtualenv with python 3 in Windows but the environment is created with python 2.7.My pip version is also from python 2.7 which i have avoided using

py -m pip install virtualenvwrapper-win
Run Code Online (Sandbox Code Playgroud)

When i do

mkvirtualenv test
Run Code Online (Sandbox Code Playgroud)

environment is created with python 2.7 Please help me with a solution Thanks in advance:)

python virtualenv virtualenvwrapper python-2.7 python-3.x

7
推荐指数
2
解决办法
2万
查看次数

什么在`mkvirtualenv`命令的引擎下?

我很好奇在mkvirtualenv命令的引擎下发生了什么,所以我试图理解它是如何调用的virtualenv.

最简单的结果是确定virtualenv程序在安装后所处的位置以及安装后mkvirtualenv程序所在的位置.所以:-

Calvins-MacBook-Pro.local ttys006 Mon Apr 23 12:31:07 |~|
calvin$ which mkvirtualenv
Calvins-MacBook-Pro.local ttys006 Mon Apr 23 12:31:10 |~|
calvin$ which virtualenv
/opt/local/library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv
Run Code Online (Sandbox Code Playgroud)

所以我在这里看到的奇怪的事情是which mkvirtualenv没有给出任何结果.为什么?

进一步挖掘,在安装它之后的virtualenvwrapper目录中,我只看到3个python文件: -

Calvins-MacBook-Pro.local ttys004 Mon Apr 23 12:28:05 |/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenvwrapper|
calvin$ ls -la
total 88
drwxr-xr-x   8 root  wheel    272 Apr 13 15:07 .
drwxr-xr-x  29 root  wheel    986 Apr 15 00:55 ..
-rw-r--r--   1 root  wheel   5292 Apr 13 15:05 hook_loader.py
-rw-r--r--   1 root  wheel   4810 Apr 13 15:07 …
Run Code Online (Sandbox Code Playgroud)

virtualenv virtualenvwrapper

6
推荐指数
1
解决办法
2486
查看次数

脚本virtualenvwrapper mkvirtualenv

我在python 2.7中编写游戏,想要编写游戏开发环境的"bootstrap"脚本,然后调用铲子.如果未检测到virtualenvwrapper,我将使用virtualenv bootstrap解决方案.但是,如果virtualenvwrapper 检测到,我想用它代替.

问题是virtualenvwrapper内联shell函数不是由我的引导脚本继承的.据我所知,这排除了像"mkvirtualenv NotOrion"这样的运行.由于环境变量"VIRTUALENVWRAPPER_VIRTUALENV" 设置(在我的情况下,从MacPorts的:/opt/local/bin/virtualenv-2.7),我试图用它直接代替:

#!/usr/bin/env bash

# Name your first "bootstrap" environment:
ENV_NAME=NotOrion
# Options for your first environment:
ENV_OPTS='--no-site-packages --distribute'

unset PYTHONDONTWRITEBYTECODE

function create_virtualenvwrapper_venv {
  echo "installing into virtualenvwrapper directory"
  cd $WORKON_HOME
  $VIRTUALENVWRAPPER_VIRTUALENV $ENV_OPTS $ENV_NAME
  cd -
  #mkvirtualenv $ENV_NAME
  #workon $ENV_NAME
}

function create_standalone_venv {
  # not run/snipped
}

if [ -z "$VIRTUALENVWRAPPER_VIRTUALENV" ]; then
  create_standalone_venv
else
  create_virtualenvwrapper_venv
fi

pip install shovel
shovel help …
Run Code Online (Sandbox Code Playgroud)

bash virtualenvwrapper

6
推荐指数
1
解决办法
2893
查看次数

为什么virtualenv从我的shell继承$ PYTHONPATH?

所以我在Ubuntu 14.04机器上将我的所有工具从python2迁移到python3.4.到目前为止,我已经完成了以下工作:

  1. 在我的zshrc中为我的用户使用python到python3
  2. 在系统本身上安装了pip3(但我只是将virtualenvs用于所有内容,所以我不会真正使用它)
  3. 改变了我的virtualenvwrapper"make"别名mkvirtualenv --python=/usr/bin/python3('workon'在下面被调用为'v')

现在好奇,你可以清楚地看到它,从virtualenv激活的环境运行python3仍然继承我的$ PYTHONPATH,它仍然为我所有的python2路径设置.这在我的virtualenv中安装/运行程序时会造成严重破坏,因为python3路径显示在旧的python2路径之后,因此python2模块首先在我的程序中导入.在启动virtualenv之前将我的$ PYTHONPATH取消为''修复此问题并且我的程序按预期启动.但我的问题是:

  1. 在virtualenvs中这个$ PYTHONPATH的继承是正常的吗?这不是打败了整个目的吗?
  2. 当python已经在内部处理它自己的路径时,为什么将$ PYTHONPATH设置为shell中的env-var?
  3. 我正确使用$ PYTHONPATH吗?我应该只在我的'zshrc'中设置它以仅列出我的个人添加物($ HOME/dev)而不是冗余的'/ usr/local/lib /'位置?
  4. 在调用它们之前,我可以非常轻松地导出备用python3路径以供我的virtualenvs使用,并在完成后重置它们,但这是解决此问题的最佳方法吗?
    ? echo $PYTHONPATH
    /usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/home/brian/dev

    brian@zeus:~/.virtualenvs
    ? python2
    Python 2.7.6 (default, Mar 22 2014, 22:59:56)
    [GCC 4.8.2] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import sys, pprint
    >>> pprint.pprint(sys.path)
    ['',
     '/usr/local/lib/python2.7/dist-packages/pudb-2013.3.4-py2.7.egg',
     '/usr/local/lib/python2.7/dist-packages/Pygments-1.6-py2.7.egg',
     '/usr/local/lib/python2.7/dist-packages/urwid-1.1.1-py2.7-linux-x86_64.egg',
     '/usr/local/lib/python2.7/dist-packages/pythoscope-0.4.3-py2.7.egg',
     '/usr/local/lib/python2.7/site-packages',
     '/usr/local/lib/python2.7/dist-packages',
     '/usr/lib/python2.7/dist-packages',
     '/home/brian/dev',
     '/usr/lib/python2.7',
     '/usr/lib/python2.7/plat-x86_64-linux-gnu',
     '/usr/lib/python2.7/lib-tk',
     '/usr/lib/python2.7/lib-old',
     '/usr/lib/python2.7/lib-dynload',
     '/usr/lib/python2.7/dist-packages/PILcompat',
     '/usr/lib/python2.7/dist-packages/gst-0.10',
     '/usr/lib/python2.7/dist-packages/gtk-2.0',
     '/usr/lib/pymodules/python2.7',
     '/usr/lib/python2.7/dist-packages/ubuntu-sso-client',
     '/usr/lib/python2.7/dist-packages/ubuntuone-client',
     '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol',
     '/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode']
    >>>

    brian@zeus:~/.virtualenvs
    ? v py3venv
    (py3venv)
    brian@zeus:~/.virtualenvs …

python virtualenv zshrc pythonpath virtualenvwrapper

6
推荐指数
1
解决办法
5745
查看次数

使用pyenv-virtualenv触发不同的应用环境

使用virtualenvwrapper,我可以设置单独的virtualenvs并调用workon venv将它们链接到特定的设置文件(例如test_settings.py或dev_settings.py)我使用virtualenv的bin中的钩子进行预设 - preactivate,postactivate,predeactivate和postdeactivate.

是否有类似pyenv的东西?pyenv-virtualenv基于当前目录中设置的.python-version自动切换virtualenvs,因此无需激活,并且.pyenv/versions/venv/bin/dir也没有虚拟包装器所具有的钩子的赞美.

我可以轻松地为各种应用程序环境创建不同的virtualenv,但是如何将它们链接到不同的特定于环境的应用程序设置?

python django virtualenv virtualenvwrapper pyenv

6
推荐指数
1
解决办法
468
查看次数

将Python3传递给virtualenvwrapper会引发ImportError

我正在尝试使用virtualenvwrapper基于python 3的方法virtualenv.但是,当我传递可选的解释器参数时,我看到了这个错误.我正在运行Ubuntu 15.04.我尝试重新安装virtualenv,virtualenvwrapper但没有成功.感谢你的帮助!

$ mkvirtualenv scriptcutter --python=/usr/bin/python3
Running virtualenv with interpreter /usr/bin/python3
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 8, in <module>
    import base64
  File "/usr/lib/python3.4/base64.py", line 9, in <module>
    import re
  File "/usr/lib/python3.4/re.py", line 336, in <module>
    import copyreg
  File "/usr/local/lib/python2.7/dist-packages/copyreg/__init__.py", line 7, in <module>
    raise ImportError('This package should not be accessible on Python 3. '
ImportError: This package should not be accessible on Python 3. Either you are trying …
Run Code Online (Sandbox Code Playgroud)

python ubuntu virtualenvwrapper python-3.x

6
推荐指数
2
解决办法
1618
查看次数