1

我希望能够将 FreeCAD 导入到我的 python 脚本中,但只能在一个 conda 虚拟环境中。有没有办法在不将 FreeCAD 添加到每个文件开头的路径的情况下做到这一点?我正在使用 Pop!_OS,它的行为应该像这里的 Ubuntu。

我已经发现您可以导入 FreeCAD,但我找到的源代码是通过在文件开头附加 FreeCAD 库位置来实现的:https ://www.freecadweb.org/wiki/Embedding_FreeCAD 。看起来您可以通过修改路径变量来规避这个问题,而且我能够在工作场所的 Windows 上这样做。我只想为特定的 conda 虚拟环境执行此操作。

理想情况下,

import FreeCAD

将在特殊的虚拟环境中工作,但不能在其他环境中工作。

如前所述,通过将 FreeCAD 的目录添加到 PATH 环境变量中,我已经让 import 语句在 Windows 上工作。它与命令提示符下的默认 python 一起使用,它应该是 anaconda 安装,所以我认为它适用于所有虚拟环境。但是,在 Linux 上,即使我使用了,我也无法在 python 中导入 FreeCAD

PATH=$PATH:/usr/lib/freecad-python3/lib/

我从 "locate FreeCAD.so" 得到的。我明白了

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'FreeCAD'

如果能够在两个操作系统上运行相同的代码,并且将 PATH 修改限制在一个虚拟环境中,那就太好了。

4

2 回答 2

1

Conda 不会从 PATH 环境中查找包。检查此答案以获取详细信息。但首先检查您的包是否可以使用pip或安装conda

于 2019-08-18T08:47:13.300 回答
0

您可以转到 virtualenv 站点包目录并将 freecad 的路径添加到 easy_install.pth

于 2019-08-18T11:22:58.120 回答