今天在给客户远程调试的时候发现,python无法导入arcpy包。查看环境变量没有异常(此处并没有为python创建单独的系统级环境变量,仅在path中添加了python路径),Arcmap可以正常打开,Engine的License也正常。由于arcpy包是在ArcGIS Desktop的安装目录下的,考虑可能是python导包的搜索路径出了问题。
1、通过ArcGIS自带的IDLE打开python,导入sys包(import sys),添加临时路径(sys.path.append(“路径”)),临时路径选择Desktop安装目录(能看到arcpy站点包即可)。------无效
2、去python的安装目录(GIS自带的),一般在 C:\Python27\ArcGIS10.6\Lib\site-packages中找后缀为".pth"的文件,此文件用于告诉python导包的时候还可以从这里搜索路径,添加以下内容到末尾。
D:\ArcGIS\Desktop10.6\bin
D:\ArcGIS\Desktop10.6\arcpy
D:\ArcGIS\Desktop10.6\ArcToolbox\Scripts
具体路径要看你的GIS的安装目录。
关闭IDLE,重新打开IDLE,键入
import sys
sys.path
查看上面的三个目录是否添加成功
最后面这个是我在.pth文件中新添加的,出现这个表示路径添加成功。
此时再import arcpy即可成功导入
另:若不想修改.pth文件也可以直接在环境变量中新建“PYTHONPATH”并在其中增加Desktop的三个目录即可。修改完后可以通过cmd —> echo %PYTHONPATH%中查看,建议修改完以后重启以下计算机。