查询类
您可能需要识别形式参数中使用的各个实际参数,并且根据该值来执行一组特定的函数。以下各部分提供了用于查询 Spatial Analyst 类的不同参数的规则。
使用固定数量的输入创建的类
- 要在类对象中查询参数的值,可以访问该对象的属性。
circle = NbrCircle(5, "CELL") # varRadius will be assigned the radius property (which is 5) varRadius = circle.radius
- 可以轻松地检查对象或对象属性的值。
>>> circle = NbrCircle(5, "CELL") >>> print circle Circle 5 Cell >>> print circle.radius 5
基于列表或列表中的列表创建的类
- 要查看整个重映射表,可使用 Python print 函数。
>>> remap = RemapValue([[1, 11], [2, 12], [3, 13]]) >>> print remap 1 11; 2 12; 3 13 >>> print remap.remapTable [[1, 11], [2, 12], [3, 13]]
- 要在基于列表中的列表创建的类对象列表中查询单个条目,可标识条目所在的列表并确定该列表中条目的位置对应的地址。
>>> remap = RemapValue([[1, 11], [2, 12], [3, 13]]) >>> print remap.remapTable[1][1] 12
基于列表中的一系列类创建的类
- 要在基于列表中的一系列类创建的类对象列表中查询点的单个 x 坐标或 y 坐标或者 x,y 坐标,可访问输入系列中单个类的属性。
>>> points = [Point(0, 5), Point(15, 175), Point(225, 450)] >>> # The following statement queries the x value of the second input point >>> xvalue = points[1].X >>> print xvalue 15
确定类型
- 要确定类对象的类型,可使用 Python type 函数。
>>> neighborhood = NbrCircle(5, "CELL") >>> neighType = type(neighborhood) >>> print neighType <class 'arcpy.sa.ParameterClasses.NbrWedge'>
- 要比较类型,可使用 Python isinstance 函数。
circle = NbrCircle(5, "CELL") # The general format is: isinstance(AnyObject, AnyClass) # In the following statement, eval will be assigned True eval = isinstance(circle, NbrCircle) # In the following statement, eval will be assigned False eval = isinstance(circle, NbrRectangle)
相关主题
5/10/2014