首页 > 解决方案 > Python - 将其他 Python 程序作为库导入

问题描述

我正在使用 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.ximportshared-librariespython-importpythonpath

解决方案


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

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


推荐阅读