当我尝试从命令行使用“.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 实用程序(gdalinfo
、gdalwarp
等)和 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/