如何克隆python虚拟环境

时间:2021-04-16 21:36:29

标签: python python-3.x virtualenv

我在 Windows 10 上使用 python 3.9.0(并测试了 3.9.2)。我正在尝试将虚拟环境克隆到另一台 Windows 10 机器。我艰难地了解到复制/粘贴不是一个好的解决方案,我发现了 virtualenv-clone。

命令如下:

virtualenv-clone myVenv myVenv_clone

我得到的错误是:

File "c:\users\freddy\appdata\local\programs\python\python39\lib\site-packages\clonevirtualenv.py", line 55, in _virtualenv_sys
    p = subprocess.Popen([executable,
  File "c:\users\freddy\appdata\local\programs\python\python39\lib\subprocess.py", line 947, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "c:\users\freddy\appdata\local\programs\python\python39\lib\subprocess.py", line 1416, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
OSError: [WinError 87] The parameter is incorrect

我已经阅读了导致此错误的几个不同原因。有些人甚至说 python 版本是一个问题,但我不知道下一步该去哪里。

更新 根据评论,我测试了 python 3.8.9 并最终出现了同样的错误。我仔细看了一下,virtualenv-clone 是在 python 3.8.2 发布之后才更新的。我测试了3.8.2,现在出现新错误。

Fatal Python error: _Py_HashRandomization_Init: failed to get random numbers to initialize Python

3.8.1、3.8.0、3.7.9 和 3.7.6 也会出现此错误。 Python 似乎无法访问生成随机数所需的内容。一些帖子表明 Python 不知道 %systemroot% 环境变量,但我不明白如何解决这个问题。

为了简化我的测试,我使用了虚拟机并拍摄了快照。因此,Win10 上只有一个版本的 Python 安装。一旦我运行我的测试并且它失败了,我将操作系统恢复到安装 python 之前的状态,然后我尝试另一个 python 版本。

0 个答案:

没有答案