python - 导入错误 : No module named gdal

标签 python command-line gdal

当我尝试从命令行使用“.py”函数时,我的 GDAL 出现奇怪的行为:

1. 例如,当我运行 gdalinfo --version 时,我得到标准响应:

GDAL 1.11.3, released 2015/09/16

2. 此外,当我运行 gdalwarp 时,我得到了标准响应,显示了标志和所有内容。

<强>3。问题: 但是,当我运行带有 .py 扩展名的 gdal 函数时,例如 gdal_polygonize.py,我得到以下信息:

Traceback <most recent call last>:
    File "C:\OSGeoW64\bin\gdal_polygonize.py", line 36, in <module>
    import gdal, ogr, osr
ImportError: No module named gdal

我检查了 Path 变量,重新安装了 python 和 gdal,但没有任何效果。 当我从我的 QGIS 运行 gdal_polygonize.py 函数时,它起作用了。我只是无法从我的命令行使用它。

最佳答案

GDAL 有两个部分:GDAL 实用程序(gdalinfogdalwarp 等)和 GDAL Python 绑定(bind)(当您调用 from osgeo import 时gdal 来自 Python 脚本。)。两者可以(或过去可以)分开安装。

您在命令行上“看到”gdalwarp 的事实意味着您在 PATH(环境变量)上拥有实用程序的位置。有些实用程序是独立的,有些需要 Python 绑定(bind)(特别是那些需要调用 .py 文件的实用程序)。为了使 Python 绑定(bind)工作,GDAL 必须在 PYTHONPATH 环境变量上。

找到 GDAL 文件夹(例如将包含 gdalwarp)。在 Python 的 Lib/site-packages 中找到 osgeo 文件夹。将这两个位置添加到 PATH 和 PYTHONPATH。您现在应该能够在新的 Python shell 中from osgeo import gdal

如果你不能,要么你在这些位置丢失了一些文件(安装错误),要么你没有正确指定路径/​​设置正确的环境变量。没有其他魔法,它要么安装和链接正确,要么你做错了什么。

请注意,要设置和运行环境变量,您需要“应用/确定”环境变量窗口,并启动一个新的命令提示符/Python shell。

关于python - 导入错误 : No module named gdal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35500176/

相关文章:

java - 如何使用 Java 命令行将文本文件读入扫描仪

windows - 如何在 Windows CMD 中一行运行两个命令?

Python GDAL : pip install --no-install GDAL fails

python - 函数定义后将返回对象赋值给函数名的目的

python - 如何在异步循环关闭之前等待对象的 __del__ 完成?

python - 高纬度非矩形投影不会出现 Cartopy 标签

python - “RandomForestClassifier”对象没有属性 'layers'

命令行整数改变值?

python - DLL 加载失败 : Unable to use GDAL on windows

c++ - 使用 autotools 和附加编译器标志编译库