需要 Spatial Analyst 许可。
Spatial Analyst (arcpy.sa) 是 ArcPy 站点包的一个模块。 访问 ArcGIS Spatial Analyst extension 功能(包括工具、运算符、函数和类)的最佳方法是从 sa 模块进行导入。 使用此导入方法时,无需提供名称空间即可访问此功能,并且还可导入重载运算符,从而能够对栅格使用运算符。
使用 Spatial Analyst 功能时的建议导入顺序如下:
import arcpy
from arcpy import env
from arcpy.sa import *
借助此方法可以执行以下操作:
设置或从 env 类直接获取环境设置值。
env.workspace = "c:/base/data.gdb"
直接通过 arcpy 运行地理处理工具和功能。
arcpy.Buffer_analysis("infeatures", "outbuffer", 5000)
无需为每个工具和类加上前缀 arcpy.sa 即可使用地图代数。
outRas = Sin("inraster1") + Raster("inraster2") + 8
要了解有关导入 ArcPy、地图代数或其他功能时的可用选项的详细信息,请参阅导入 ArcPy。
许可:
在 Python 中(或在 Python 窗口中但尚未启用扩展模块时),需要先检出 ArcGIS Spatial Analyst extension 许可,然后再运行工具。
# Check out the ArcGIS Spatial Analyst
# extension license
arcpy.CheckOutExtension("Spatial")
交互式 Python 体验自定义
Python 窗口(或任何其他交互式 Python 解释程序)可识别系统环境变量 PYTHONSTARTUP。 如果之前将 PYTHONSTARTUP 设置为某一 Python 文件,则打开 Python 窗口时,Python 将自动执行此文件的代码。 如果希望在第一次启动 Python 窗口时已预加载所有常用 Python 工具,此方法十分有用。
# File: pythonstartup.py
# Description: Used to customize the state of the Python startup environment
# upon startup of ArcGIS application
# Can specify module imports, variables, messages
# Requirements: Spatial Analyst Extension
# Author: Esri
# Print to screen
print("import os\nimport sys\nimport arcpy\nfrom arcpy import env\nfrom arcpy.sa import *")
# Imports
import os
import sys
import arcpy
from arcpy import env
from arcpy.sa import *
要添加 PYTHONSTARTUP 环境设置,请执行以下操作:
- 在计算机上查找并打开系统属性。
- 单击高级选项卡并单击环境变量。
- 在系统变量下,单击新建。
- 将 PYTHONSTARTUP 添加到变量名中。
- 将 Python 文件的路径添加到变量值,然后单击确定。
- 单击确定。