CreateObject (arcpy)
Summary
Creates geoprocessing objects. The extra arguments can be used to specify additional requirements for the object creation such as the number of columns in the ValueTable object.
Discussion
![Note Note](rsrc/note.png)
Instead of using CreateObject, it is simpler and more direct to use the equivalent ArcPy class. For instance, instead of arcpy.CreateObject("array"), use arcpy.Array().
Syntax
Parameter | Explanation | Data Type |
name |
Name of the object to be created (ArcSDESQLExecute, Array, Extent, FeatureSet, Field, FieldInfo, FieldMap, FieldMappings, Geometry, NetCDFFileProperties, Point, RecordSet, Result, SpatialReference, ValueTable). | String |
options |
Optional argument(s) depend on the object being created. | Object |
Data Type | Explanation |
Object |
The object returned depends on type of object specified in the first parameter. |
Code Sample
Use value table to hold feature class names and ranks for the Union tool.
import arcpy
# Set the workspace. List all of the feature classes in the dataset
arcpy.env.workspace = "c:/data/landbase.gdb/wetlands"
fcs = arcpy.ListFeatureClasses()
# Create the value table for the Analysis Union tool with 2 columns
vtab = arcpy.CreateObject("valuetable", 2)
# Iterate through the list of feature classes
for fc in fcs:
# Update the value table with a rank of 2 for each record, except
# for BigBog
if fc.lower() != "bigbog":
vtab.addRow(fc + " 2")
else:
vtab.addRow(fc + " 1")
# Union the wetlands feature classes with the land use feature class
# to create a single feature class with all of the wetlands and land
# use data
vtab.addRow("c:/data/landbase.gdb/land_use 2")
arcpy.Union_analysis(vtab, "c:/data/landbase.gdb/wetlands_use")