如何使用ArcGIS/Python制作输入参数?

问题描述:

我是Python新手。我尝试使用arcpy.GetParameterAsText函数将“源文件夹”和“地理数据库”输入到ArcGIS工具箱中。如何使用ArcGIS/Python制作输入参数?

我真的不确定在哪里放两个arcpy.GetParameterAsText函数。我想将工作区设置为它吗?如果我这样做,我不知道如何在没有路径之前创建GDB文件。

# Set the workspace 
arcpy.env.workspace = "C:\\Users\\x\\Desktop\\Python_Scripting\\4\\Lesson4_Data\\Lesson4_Data" 

#Create the GDB 
arcpy.CreateFileGDB_management("C:\\Users\\x\\Desktop\\Python_Scripting\\4\\Lesson4_Data\\Lesson4_Data","lesson4a.gdb") 

# Set the feature class variables 
fclist = arcpy.ListFeatureClasses("","polygon") 
fctotal = arcpy.ListFeatureClasses() 

# Start the loop on all feature classes 
for fc in fclist: 
    fcdesc = arcpy.Describe(fc) 
    print fcdesc.basename + " is currently importing into the lesson4a.gdb." 
    arcpy.CopyFeatures_management (fc, "C:\\Users\\x\\Desktop\\Python_Scripting\\4\\Lesson4_Data\\Lesson4_Data\\lesson4a.gdb\\" + fcdesc.basename) 
    print fcdesc.basename + " is done importing into the lesson4a.gdb.\n" 

arcpy.GetParameterAsText(#)函数将读取来自ArcGIS工具的输入参数。

在脚本和调试过程中,对函数的输入变量进行硬编码以验证函数是否正常工作是最简单的。一旦该工具(基本上)以您想要的方式工作,请在ArcMap中创建工具箱和脚本工具。

要接受来自工具执行对话框的输入参数,您需要在创建脚本工具(并将代码更改为接受GetParameterAsText输入)时创建这些输入参数。对此的最佳演练实际上是ArcGIS资源中心。

内Python脚本,我通常读取输入参数,第一件事 - 这样一来,他们可以作为脚本的其余所有变量。索引值指示哪个参数是哪个。

# Input parameters 
sourceFolder = arcpy.GetParameterAsText(0)  # first input parameter of script tool 
geodatabaseName = arcpy.GetParameterAsText(1)  # second input parameter 

# Set the workspace 
arcpy.env.workspace = sourceFolder 

#Create the GDB 
arcpy.CreateFileGDB_management(sourceFolder, geodatabaseName)