【问题标题】:Python - importing other python programs as librariesPython - 将其他 Python 程序作为库导入
【发布时间】:2021-01-30 21:05:55
【问题描述】:

我正在使用 FreeCAD。 FreeCAD 以 .so 文件的形式提供了许多库。 因此,要使用它们,我只需要修改.bashrc,以便在PYTHONPATH 中包含库文件的位置。 那么这一切都是做import FreeCAD 的事情,这很有效。 这就是现在的一切。

但是,我无法导入另一个库。 当我输入导入草稿时,我明白了

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

我查了一下,库目录中没有Draft.so。 但是,在程序的 GUI - python 控制台中,当我输入import Draft 时,它可以工作。

我调查了为什么会发生这种情况。我输入了:

import Draft
import inspect
inspect.getfile(Draft)

我得到了:

'/usr/share/freecad-daily/Mod/Draft/Draft.py'

这是另一个目录。 此目录中甚至还有另一个文件夹,其中包含所有 Draft 函数调用,作为单独的 python 文件。 (比如有一个方法叫Draft.scale(),目录里面有一个文件叫scale.py)

有没有办法包含所有这些 python 文件,所以我可以使用import Draft,并且可以正常工作?

也许是设置一个新的PYTHONPATH 的问题?

【问题讨论】:

    标签: python-3.x import shared-libraries python-import pythonpath


    【解决方案1】:

    只需将'/usr/share/freecad-daily/Mod/Draft' 添加到您的PYTHONPATH

    一般来说,Mod 中的每个子目录都是一个包根目录。

    【讨论】:

      猜你喜欢
      • 2019-11-19
      • 2015-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      相关资源
      最近更新 更多