python - 适用于 Ubuntu 和 Windows 的相同 python 库列表

标签 python linux windows ubuntu

我的电脑上同时安装了 Windows 和 Ubuntu。
通常,我在 Ubuntu 上使用 Python,但有时,我需要将我的脚本编译为 Windows .exe 文件。为此,我需要在 Windows 上安装与在 Ubuntu 上相同的 python 库列表。

我已经尝试用

解决这个问题
  • pip freeze > requirements.txt
  • pip install -r requirements.txt

但是第二个操作会在许多库上引发错误,例如 apturl,当然还有 unity-scope,例如 - “Could not find blah-blah-blah”。现在我只是手动安装所有需要的库,但这很无聊。

在 Win 和 Linux 之间“同步”python 库列表的最佳方法是什么?



经过一番思考
好的,我有一个想法,还有另一个问题 - 是否可以忽略所有“找不到”错误并继续处理列表中的下一个元素?

最佳答案

我看到解决这个问题的方法是使用 python virtualenvironment . pip freeze > requirements.txt 如果您在系统 python 安装上使用它,它会非常粗糙。虚拟环境是一个独立的 python 安装,允许您在不同的项目中有不同的 python 要求,并且能够在不同的环境中可靠地重现 python 依赖项。在两个操作系统上安装 virtualenv 后,(apt-get install python-virtualenv 在 Ubuntu 上,以及网站上的 Windows 说明)工作流程将类似于以下内容:

  1. 创建一个没有系统包的 virtualenv (virtualenv/path/to/env)
  2. 激活virtualenv (source/path/to/env/bin/activate)
  3. 创建一个只包含您需要的库的 requirements.txt 文件(取决于您在系统 python 安装中有多少,手动执行此操作可能会更容易)
  4. pip install -r requirements.txt 在你漂亮的新 virtualenv 中并检查你的代码是否有效。 (python myscript.py)
  5. 对其他操作系统重复 1、2 和 4。

正如@vrs 所述,您的要求中的某些内容取决于 apturlunity-scope(它们是特定于 linux 的),这有点奇怪,但是如果您的项目实际上只依赖于 python 包,那么如果你可以在两种环境中启动并运行 virutalenv,那么上面的方法应该可以正常工作。

关于python - 适用于 Ubuntu 和 Windows 的相同 python 库列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34684281/

相关文章:

linux - 如何在 ssh 中查找 linux 服务器上已用的内存

windows - 无法在 Windows 10 上提取 bash (Ubuntu)

python - PonyORM - 多个模型文件

python - Django manage.py syncdb 抛出没有名为 MySQLdb 的模块

python - 在 Python 3.6.1 中使用带有 basemap 和轮廓的某些投影时出现 IndexError

linux - 将文本格式化为单独的文件

python - tensorflow 将不同形状的张量相乘

rtweet create_token 在需要 TRUE/FALSE 的地方缺少值

linux - 我如何在 Windows 上运行 Ubuntu 的/bin/bash

c++ - Windows 服务和 Windows 7 中的 exe 的互斥锁名称相同