CreateObject

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

NoteNote:

Instead of using CreateObject, consider using the equivalent ArcPy class. For instance, instead of arcpy.CreateObject("array"), use arcpy.Array().

Syntax

CreateObject (name, {options})
ParameterExplanationData 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
Return Value
Data TypeExplanation
Object

The object returned depends on type of object specified in the first parameter.

Code Sample

CreateObject example

Use value table to hold feature class names and ranks for the Union tool.

import arcpy
from arcpy import env

# Set the workspace. List all of the feature classes in the dataset
#
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")
 

10/28/2011