SetParameterAsText

Summary

Sets a specified parameter property by index using a string value. This function is used to pass values from a script to a script tool. If you need to pass an object, such as a SpatialReference, use the SetParameter function.

Syntax

SetParameterAsText (index, text)
ParameterExplanationData Type
index

The specified parameter's index position in the parameter list.

Integer
text

The string value that will set the specified parameter's property.

String

Code sample

SetParameterAsText example

Pass a string to a specified tool parameter.

import arcpy

# Get the feature class from the tool.
fc = arcpy.GetParameterAsText(0)

# Determine the shape type of the feature class.
describe = arcpy.Describe(fc)

# Set tool output parameters based on shape type.
if describe.shapeType == "Polygon":
    arcpy.AddMessage("Feature Type is polygon")
    arcpy.SetParameterAsText(1, "true")  # Is polygon
    arcpy.SetParameterAsText(2, "false") # Is not line
    arcpy.SetParameterAsText(3, "false") # Is not point

elif describe.shapeType == "Polyline":
    arcpy.AddMessage("Feature Type is polyline")
    arcpy.SetParameterAsText(1, "false") # Is not polygon
    arcpy.SetParameterAsText(2, "true")  # Is line
    arcpy.SetParameterAsText(3, "false") # Is not point

elif describe.shapeType == "Point":
    arcpy.AddMessage("Feature Type is point")
    arcpy.SetParameterAsText(1, "false") # Is not polygon
    arcpy.SetParameterAsText(2, "false") # Is not line
    arcpy.SetParameterAsText(3, "true")  # Is point

else:
    arcpy.AddMessage("Unknown feature type")
    arcpy.SetParameterAsText(1, "false") # Is not polygon
    arcpy.SetParameterAsText(2, "false") # Is not line
    arcpy.SetParameterAsText(3, "false") # Is not point

Related topics