PyCharm:导入模块(qgis_core)时出错

2024-09-26 18:09:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用PyCharm Community Edition 2019.3.1在Windows 10 64位上为QGIS编写基于Python的程序。我通过运行默认设置的OSGeo4安装程序安装了QGIS(v.3.10.1)。实现的Python版本是Python 3.7。我创建了一个.cmd脚本,指向所有必要的环境:

SET OSGEO4W_ROOT=C:\OSGeo4W64
call "%OSGEO4W_ROOT%"\bin\o4w_env.bat
call "%OSGEO4W_ROOT%"\apps\grass\grass78\etc\env.bat 

@echo off
path %PATH%;%OSGEO4W_ROOT%\apps\qgis\bin
path %PATH%;%OSGEO4W_ROOT%\apps\grass\grass78\lib
path %PATH%;%OSGEO4W_ROOT%\apps\Qt5\bin
path %PATH%;%OSGEO4W_ROOT%\apps\Python37\Scripts


set PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis\python
set PYTHONHOME=%PYTHONHOME%;%OSGEO4W_ROOT%\apps\Python37

start "PyCharm aware of Quantum GIS" /B "C:\Program Files\JetBrains\PyCharm Community Edition 2019.3.1\bin\pycharm64.exe"

在新安装的PyCharm上运行脚本后,程序会打开,但也会显示错误消息:

“导入错误:DLL加载失败:%1不是有效的Win32应用程序。”

接受此消息后(如果我重复该步骤,此错误消息将不再显示) 我创建了一个新的Python脚本,并在OSGEO4W文件夹中的Python版本上设置了缺少的解释器。更新Python解释器后,我想通过以下方式导入qgis.core模型:

import qgis.core

但我得到以下错误代码:

Traceback (most recent call last):
  File "C:/Users/[...]/PycharmProjects/untitled1/venv/aaa", line 1, in <module>
    import qgis.core
  File "C:\OSGEO4~1\apps\qgis\python\qgis\core\__init__.py", line 25, in <module>
    from qgis._core import *
ImportError: DLL load failed: The specified module could not be found.

Process finished with exit code 1,

我想知道,因为模块包含函数出现在自动完成中,并且不会抛出错误,但是在编写完整语句后,代码变灰,并且出现了提到的错误

作为一名Python新手,我将非常感谢对我的问题的任何帮助


Tags: appspathcommunitycoreimport脚本消息bin

热门问题