嗯,很久没写了。今天起的很早,偶发性的想弄一弄Python。是的,就是Python,这玩意跟ESRI结合的挺多,而且在10.1版本中,形成了正规军Arcpy,是该学习一下是怎么回事了,不是么?
是语法,很简单的,多了一个复数的定义,一般情况下用不到的;排版,使用对齐方式,蛮特别的;单行注释采用#,多行注释采用“”“(三个双引号),一般的流程性控制语句if,while,do, OK,差不多可以动手写一个脚本了~~
在ArcTool中新建一个脚本,参考一下官方帮助,有几个例子看一看,哦,多了几个函数
GP = ARC.create(9.3) inputFC = GP.GetParameterAsText(0) distanceConcept = GP.GetParameterAsText(1)
GetParameterAsText从界面中提取数据来源~~好吧,挺有用的~~
嗯,写一个检查图层的字段是否存在,如果不存在则添加的脚本吧
try: #TB if gp.Exists("TB"): AddLog("TB has Exist") if not gp.ListFields("TB","XZGDJFLY"): AddLog("Field XZGDJFLY Not Exist,Need To Add") gp.AddField_management(TB, "XZGDJFLY", "TEXT", "", "", "50", "新增耕地经费来源", "NULLABLE", "NON_REQUIRED", "") AddLog("End Of Add Field") else: AddLog("Field XZGDJFLY had Exist") else: AddLog("TB has not Exist") AddLog("All is OK……") except: AddLog(gp.GetMessages())
嗯,上面定义了一个函数AddLog,是为了输出信息,调试用的,当然Python中定义函数也非常方便
def AddLog(msg): print msg gp.addmessage(msg)
最后,在ArcTool中设置一下参数的获取方式,本人设置的为数据集~~
很好,很强大,以后大家可以多用用