python是个很好的东东

  嗯,很久没写了。今天起的很早,偶发性的想弄一弄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中设置一下参数的获取方式,本人设置的为数据集~~

很好,很强大,以后大家可以多用用

只是一个轻轻的过客……
原文地址:https://www.cnblogs.com/feedback/p/2936129.html