关于从 conda 到 virtualenv 的虚拟环境的问题

question about virtual environments from conda to virtualenv

我一直在 python 中从事一个项目,该项目位于 linux 机器上创建的环境中。我最近买了一台新电脑,我尝试了 freebsd,所以我决定看看我是否可以移植设置,因为这些环境应该是独立于平台的。

由于freebsd 中不支持conda,我决定编写一个脚本将依赖项从conda 迁移到virtualenv。该脚本虽然将 .yml 文件转换为 pip 安装依赖项所需的 .txt 文件,但我可以看到仍然缺少很多包,特别是从 .yml 文件中的依赖项标签。

这是否意味着这些软件包还没有移植到 freebsd 上,或者是否有不同的方法将它们添加到 .txt 文件中而不只是它们的名称?

Does it mean that these packages are not yet ported on freebsd or is there a different way to add them in the .txt file instead of just their name?

听起来 pip 找不到您的一些依赖项,所以是的。

请记住,condapip 是完全不同的构建系统,尽管它们在很大程度上彼此兼容,并且尽管大多数软件包在一个系统上可用,但在另一个系统上可用。这也意味着 conda list 通常包含一些您不一定需要通过 pip 安装的软件包。因此,您最好从头开始使用一个包含您实际需要的包的新 requirements.txt 文件,然后让 pip 找到它需要的其他内容(同样,这可能与 conda需要)。