Йо, найкращий спосіб зробити це - використовувати Map Maping. Я багато років боровся з цією функцією програмного забезпечення ESRI, але нарешті задоволений цим рішенням. В основному, ви можете просто зробити копію класу Feature з полями, упорядкованими постійно, використовуючи arcpy.FieldMappings . Усі дані також передаються. Після завершення сценарію просто перейменуйте свій старий клас функцій в myFeatureClass_old, а новий - на myFeatureClass!
Ось сценарій, це дуже просто:
import arcpy
'''
This is possible in python using FeatureClasstoFeatureClass with Fieldmappings. You can also rename fields at the same time.
So if you have a Feature Class with FIELD3, FIELD2, FIELD1 and you want the result to be FIELD1, FIELD2, FIELD3 then the following code should accomplish this.
'''
arcpy.env.workspace = r"C:\Users\myself\ArcData\my_geodatabase.gdb"
arcpy.env.overwriteOutput = True
input_fpath = "Lakes"
output_dpath = arcpy.env.workspace
output_fname = "Lakes_new"
fms = arcpy.FieldMappings()
fm = arcpy.FieldMap()
fm.addInputField(input_fpath,"FIELD1")
fms.addFieldMap(fm)
fm = arcpy.FieldMap()
fm.addInputField(input_fpath,"FIELD2")
fms.addFieldMap(fm)
fm = arcpy.FieldMap()
fm.addInputField(input_fpath,"FIELD3")
fms.addFieldMap(fm)
arcpy.conversion.FeatureClassToFeatureClass(input_fpath,output_dpath,output_fname,"",fms)