Just trying to follow...you mean use an InsertCursor instead of SearchCursor?
No, you will need to create an empty output feature class template based on your source feature class.Here is how I do it. You may want to use some field mapping depending on if you need to limit the fields from source to output.
template_query = '''{0} < 0'''.format(
arcpy.AddFieldDelimiters(input_fc, arcpy.Describe(input_fc).OIDFieldName))
arcpy.TableToTable_conversion(input_fc, out_dir, output_fc, template_query)
Then for each row you want in your output, you put it directly in the output with the insert cursor.Maybe something like this all together.import arcpy
def find_overlaps(input_features, output_features):
template_query = '''{0} < 0'''.format(
arcpy.AddFieldDelimiters(input_features, arcpy.Describe(input_features).OIDFieldName))
arcpy.FeatureClassToFeatureClass_conversion(
input_features, out_dir, output_features, template_query)
field_list = ('OBJECTID', 'SHAPE@', 'name')
with arcpy.da.InsertCursor(input_features, field_list) as insert_cursor:
uniqueList = []
for row in arcpy.da.SearchCursor(input_features, field_list):
for shape in uniqueList:
if row[1].equals(shape):
foundMatch = True
break
if not foundMatch:
insert_cursor.insertRow(row)
uniqueList.append(row[1])