【发布时间】:2016-03-14 08:22:30
【问题描述】:
我尝试导入 QGIS 应用程序随附的名为“处理”的包。在 QGIS 中的 Python 控制台中导入该包是没有问题的。我也设法找到了它:
>>>import processing
>>>processing.__file__
'C:/PROGRA~1/QGISES~1/apps/qgis/./python/plugins\\processing\\__init__.py'
但我的目标是将该包导入到一个独立的 Python 脚本中,该脚本在 外部 QGIS 应用程序运行。我找到了一个例子,根据我试过的例子(仅限代码摘要):
sys.path.append('C:\\Program files\\QGIS Essen\\apps\\qgis\\python\\plugins\\processing')
from processing.core.Processing import Processing
Processing.initialize()
import Processing
存在子目录\processing\core,并且该目录中的Processing.py 文件也存在。一切似乎都很好。
print sys.path 给了我(以及其他许多人):
['C:\\Program files\\QGIS Essen\\apps\\qgis\\python\\plugins\\processing']
但是当我运行我的脚本时,我收到一条错误消息告诉我:
ImportError: 没有名为 processing.core.Processing 的模块
为什么找不到那个包或模块?可能是调用语法或路径错误?
【问题讨论】:
-
Python 扫描
sys.path目录中的模块,所以你要添加包的父级...'C:\\Program files\\QGIS Essen\\apps\\qgis\\python\\plugins'