FieldInfo (arcpy)
Summary
Provides field info methods and properties for layer and table views.
Syntax
Properties
| Property | Explanation | Data Type |
| count (Read Only) |
The field count. | Integer |
Method Overview
| Method | Explanation |
| addField (field_name, new_field_name, visible, split_rule) |
Adds a field info entry |
| exportToString () |
Exports the object to its string representation. |
| findFieldByName (field_name) |
Finds the field index by field name |
| findFieldByNewName (field_name) |
Finds the field index by new field name. |
| getFieldName (index) |
Gets the field name from the table by index position. |
| getNewName (index) |
Gets the new field name from the table by index position. |
| getSplitRule (index) |
Gets the split rule from the table by index position. |
| getVisible (index) |
Gets the visible flag from the table by index position. |
| loadFromString (string) |
Restore the object using its string representation. The exportToString method can be used to create a string representation. |
| removeField (index) |
Removes the field info entry from a table. |
| setFieldName (index, field_name) |
Sets the field name into the table. |
| setNewName (index, new_field_name) |
Sets the new field name into the table. |
| setSplitRule (index, rule) |
Sets the split rule into the table. |
| setVisible (index, visible) |
Set the visible flag of a field on the table. |
Methods
| Parameter | Explanation | Data Type |
field_name |
The field name from the input feature class or table. | String |
new_field_name |
Sets the field name for the new layer or table view. | String |
visible |
Sets whether the field is visible or hidden.
| String |
split_rule |
Sets the behavior of an attribute's values when a feature is split.
| String |
| Data Type | Explanation |
| String |
The string representation of the object. |
| Parameter | Explanation | Data Type |
field_name |
The field name used to find its index position | String |
| Data Type | Explanation |
| Integer |
The index position |
| Parameter | Explanation | Data Type |
field_name |
The new field name used to find its index position. | String |
| Data Type | Explanation |
| Integer |
The index position. |
| Parameter | Explanation | Data Type |
index |
The index position. | Integer |
| Data Type | Explanation |
| String |
The field name. |
| Parameter | Explanation | Data Type |
index |
The index position. | Integer |
| Data Type | Explanation |
| String |
The new field name. |
| Parameter | Explanation | Data Type |
index |
The index position. | String |
| Data Type | Explanation |
| String |
The split rule.
|
| Parameter | Explanation | Data Type |
index |
The index position. | String |
| Data Type | Explanation |
| String |
The visible flag.
|
| Parameter | Explanation | Data Type |
string |
The string representation of the object. | String |
| Parameter | Explanation | Data Type |
index |
The index position of the field info object. | Integer |
| Parameter | Explanation | Data Type |
index |
The index position. | Integer |
field_name |
The field name to set into the table. | String |
| Parameter | Explanation | Data Type |
index |
The index position. | None |
new_field_name |
The new field name to set into the table. | String |
| Parameter | Explanation | Data Type |
index |
The index position. | Integer |
rule |
The split rule to set into the table.
| String |
| Parameter | Explanation | Data Type |
index |
The index position. | Integer |
visible |
The visible policy to set into the table.
| String |
Code Sample
Display FieldInfo properties for a feature layer.
import arcpy
feature_class = "c:/Data/wells.shp"
layer = "temp_layer"
arcpy.MakeFeatureLayer_management(feature_class, layer)
# Create a describe object
desc = arcpy.Describe(layer)
# If a feature layer, continue
if desc.dataType == "FeatureLayer":
# Create a fieldinfo object
field_info = desc.fieldInfo
# Use the count property to iterate through all the fields
for index in xrange(0, field_info.count):
# Print fieldinfo properties
print("Field Name: {0}".format(field_info.getFieldName(index)))
print("\tNew Name: {0}".format(field_info.getNewName(index)))
print("\tSplit Rule: {0}".format(field_info.getSplitRule(index)))
print("\tVisible: {0}".format(field_info.getVisible(index)))