import arcpy
def findunique(layer1, layer2, idfield):
#Select rows from layer2 that are not in layer1 based on a idfield
layer1_ids = [i[0] for i in arcpy.da.SearchCursor(layer1, idfield)]
oids_to_select = []
with arcpy.da.SearchCursor(layer2,['OID@',idfield]) as cursor:
for row in cursor:
if row[1] not in layer1_ids:
oids_to_select.append(row[0])
sql = """{0} IN ({1})""".format(arcpy.AddFieldDelimiters(layer2,arcpy.Describe(layer2).OIDFieldName),", ".join(map(str,oids_to_select)))
arcpy.SelectLayerByAttribute_management(in_layer_or_view=layer2,
where_clause=sql)