问题标签 [python-venv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1663 浏览

python-venv - 如何退出 pew venv

我正在使用Python env Wrapper,想知道如何在不关闭 shell 的情况下停用/退出环境

0 投票
0 回答
495 浏览

python - 新的 python 3.6 venv 在 MacOS 上给出错误

我在 MacOS v10.11 上安装了 python 3.5.2 anaconda。

如果我尝试运行 python 命令在同一目录中构建虚拟环境

然后它抱怨上面提到的错误。如果我将相同的命令与python3而不是python.
有什么线索吗?

0 投票
1 回答
471 浏览

python - 在 Mac OSX (Lion) 中设置 Python venv,为什么 `which python` 没有改变?

我正在尝试按照指南在 OSX 10.8.5 (Lion) 上设置虚拟环境。Homebrew 安装成功,以下更新成功完成:

但是,which python仍然显示/Library/Frameworks/Python.framework/Versions/2.7/bin/python。为什么??(我期望/usr/local/bin/python相反,目标是使用 venv(s) 来分隔项目。)

更新...
$PATH 信息:

结果...主机:~ user$ brew install python 更新自制软件... ==> 自动更新自制软件!更新了 1 个水龙头(自制/核心)。公式没有变化。

运行医生显示了许多问题,但解决方案是... host:~ user$ brew link python

这最终需要一个力量(--overwrite)......

供参考: brew install python,但随后:“python-2.7.6 已经安装,只是没有链接” python homebrew 默认

但是我不明白为什么会这样。如果有人可以解释发生了什么(为什么自制软件没有更新链接),我很乐意回答。

0 投票
0 回答
247 浏览

python - 像“pserve”这样的 Python 命令如何确定从哪个虚拟环境运行?

我正在使用 Windows。

我在命令提示符下成功运行了以下命令:

pserve应用程序可以在我的机器上的至少 2 个位置找到:

  1. C:\projects\quick_tutorial\env\Scripts
  2. C:\Python34\Scripts

问题:

  1. pserve从一个不包含pserve应用程序的文件夹中运行。如何确定哪个pserve应该启动development.ini文件?
  2. 如何确定应该使用哪个 Python 模块/环境来运行我的“cc_starter”项目?我很困惑,因为我在这里读到:virtualenvs 应该在哪里创建?在哪里创建虚拟环境并不重要;那么是pserve应用程序的位置决定了用于运行我的项目的虚拟环境吗?还是我的“cc_starter”项目中的一个文件中的命令行?

作为参考,我正在关注Pyramid 的快速教程

0 投票
0 回答
78 浏览

python-3.x - python - Eclipse 不扩展 PYTHONPATH

起初我不得不说我是 python 的新手。我为 python 3.6 x64 安装了 pywin32 并且想知道为什么我仍然收到导入错误:

在此处输入图像描述

编辑:错误:import win32api=>No module named win32api

那是我当前解释器的配置。 在此处输入图像描述

我以为eclipse会扩展sys.path,当我添加文件夹时,不是吗?但是正如您所看到的,当我打印 sys.path 时,尽管我将它们添加到 PYTHONPATH 中,但仍然缺少一些文件夹。

有人能弄清楚我做错了什么吗?

顺便说一句:python 在给定文件夹中是否递归查找?

0 投票
2 回答
19326 浏览

python-3.x - Ansible 使用 venv 模块创建一个 virtualenv

如何使用 Ansible 使用venvPython3 标准库中的模块创建 virtualenv?

手动,可以这样做来创建一个 venv(虚拟环境):

如何使用 Ansible 执行此操作?

0 投票
1 回答
281 浏览

python - 如何使用依赖项维护 python 应用程序,包括我自己的自定义库?

我正在使用 Python 开发一些特定于公司的应用程序。有一个自定义共享模块(“库”)描述了一些数据和算法,并且有几十个 Python 脚本可以使用这个库。这些文件非常多,因此它们被组织在子文件夹中

用户想要运行这些脚本,只需转到 myproject\utils 并启动“py util2.py some_params”即可。这些用户中有许多是开发人员,因此他们经常想要编辑库并立即使用更新的代码重新运行脚本。该项目还使用了一些 3rd 方库,我想确保每个人都使用这些库的相同版本。

现在,我遇到了两个关键问题:

  1. 如何从(应用程序)引用(库)?
  2. 如何管理第三方依赖?

第一个问题对于很多 Python 开发者来说都很熟悉,并且在 SO 上被问过很多次:指示 Python 从 "....\library" 导入包是相当困难的。我测试了几种不同的方法,但似乎 python 不愿意在任何地方搜索包,而是在标准库位置或脚本本身的文件夹中搜索。

  • 相对导入不起作用,因为脚本不是库的一部分(即使它是,当脚本直接执行时这仍然不起作用,除非它放在我想避免的“根”项目文件夹中)
  • 将 .pth 文件(从阅读本文档中可能会想到)到脚本文件夹显然没有任何效果

当然直接干预 sys.path 工作,但是每个脚本文件中的样板代码看起来都非常糟糕

我意识到发生这种情况是因为 Python 希望我的库被正确“安装”,如果这个库与使用它的脚本分开开发,那确实是唯一正确的方法。但不幸的是,情况并非如此,我认为每次更改库时重新“安装”库将非常不方便并且容易出错。

第二个问题很简单。有人在我们的 app/lib 中添加了一个新的 3rd 方模块,其他人在更新他们的应用程序后开始看到导入问题。几个开发分支,用户执行 pip 安装的不同时刻,很少回滚 - 每个人最终都会使用不同版本的 3rd 方模块。在我的情况下,由于许多开发人员大量使用较旧的 Python 2.x 代码,而我想继续使用 Python 3.x,因此事情变得更加复杂

在为我的问题寻找可能的解决方案时,我发现 Python 中有一个非常出色的虚拟环境功能。事情看起来很光明:

  1. 为 myproject 创建一个 venv
  2. 分发 Requirements.txt 文件作为应用程序的一部分,并提供一个相应地填充 venv 的脚本
  3. 将我自己的库符号链接到 venv site_packages 文件夹,以便 Python 始终检测到它

这个解决方案看起来非常自然和强大。我明确地为我的项目设置了我自己的环境,并将我需要的任何东西放入这个 venv,包括我自己的库,我仍然可以在运行中进行编辑。它确实有效。但是调用activate.bat来激活这个 python 环境和另一个批处理文件来停用它是一团糟,尤其是在 Windows 平台上。正在编辑 sys.path 的样板代码看起来很糟糕,但至少它不会像这个潜在的修复那样干扰用户体验。

所以有一个问题我想问。

  1. 有没有办法将特定的 python venv 绑定到特定的文件夹,所以 python 启动器会自动将此 venv 用于这些文件夹中的脚本?
  2. 有没有更好的替代方法来处理我错过的这种情况?

我的项目环境是在 Windows 10 上运行的 Python 3.6。

0 投票
1 回答
619 浏览

python - Falcon python M2Crypto RSA错误

我们最近开发了一个使用 RSA 的 API,主要问题是在控制台中它可以正常工作,但是一旦进入应用程序的“venv”,它就会显示不同的错误。

M2Crypto 库安装在 ubuntu 和 pip 中。

使用 RSA 的代码是:

运行环境的命令:

有什么建议吗?

我究竟做错了什么?

0 投票
3 回答
111 浏览

django - 虚拟环境 python 3.5 只找到 django python 2.7

我已经创建了 python 3.5.2 虚拟环境(“python --version”证实了这一点)

但是当我尝试使用“pip install django~=1.10.0”安装 django 时,我收到以下消息:

已满足要求:/usr/local/lib/python2.7/dist-packages 中的 django~=1.10.0

如何获得与我的 venv 中的 python 版本一致的 django 版本?

0 投票
2 回答
150 浏览

raspberry-pi2 - 谷歌助手在 RPi2 上失败并出现打印错误

在尝试运行示例时,设法完成了大部分安装,直到结束。

看到一个例子,其中一些人已经成功了,但我不清楚他们使用的是 python2 还是 3 venv?有人可以帮忙吗?