0

我在 Windows 机器上创建了一个 virtualenv 目录,并将其复制到未安装 python 的原始 Windows 机器上的相同绝对路径中。在第一次通过时,python.exe 在原始机器上失败,因为它找不到 python27.dll。然后我回到第一台机器并将 python27.dll 从 C:\Windows\System32 复制到 virtualenv \Scrips 文件夹中,并重复该过程。python.exe 然后在原始机器上失败并出现以下错误:ImportError: no module named functools.

此问题似乎与 virtualenv 的以下修复有关:https ://github.com/techtonik/virtualenv/commit/bd2fb414d016be7462d19bf9116117ac5aa9b019 。我使用的是 virtualenv 1.7.1.2 和 python 2.7。有任何想法吗?

4

2 回答 2

0

virtualenv 不是完整的 Python 安装。它只是一个使用现有 Python 安装并提供隔离环境来安装包的环境。不要指望给定的 virtualenv 可以工作,除非它是在哪里创建的(“哪里”包括它所在的计算机)。

对于部署,有 PEX 和 PyInstaller 以及各种其他选项。

于 2018-08-10T14:06:27.263 回答
-1

从您的一条评论中:

我的问题很简单,virtualenv 可以在没有安装 python 的情况下工作吗?

不,请阅读virtualenv 文档中的“使环境可重定位”

引用最重要的:

注意:这个选项在某种程度上是实验性的,可能还有一些尚未确定的警告。此外,这目前不适用于 Windows。

于 2012-04-12T15:09:34.330 回答