Код нижче створить із файлу форми файл шару під назвою test_A.lyr, у якому запит визначення "testField" = 'A', збережений у ньому.
import arcpy
arcpy.MakeFeatureLayer_management(r"C:\temp\testLines.shp","test_lyr")
lyr = arcpy.mapping.Layer("test_lyr")
lyr.name = "test"
lyr.definitionQuery = '"testField" = ' + "'A'"
lyr.saveACopy(r"C:\temp\test_A.lyr")
del lyr
Якщо потрібно, ви також можете додати цей файл шару або об’єкт шару (лір) до того, як він буде збережений як файл шару, на вашу карту через arcpy.mapping.AddLayer.
Щоб побачити, чи проходить де_clause на MakeFeatureLayer як Запит на визначення, який, на мою думку, є недокументованою поведінкою, я провів другий тест нижче, щоб перевірити відповідь @John, і він цілком правильний.
arcpy.MakeFeatureLayer_management(r"C:\temp\testLines.shp","test_lyr2",'"testField" = ' + "'A'")
lyr2 = arcpy.mapping.Layer("test_lyr2")
lyr2.name = "test2"
lyr2.saveACopy(r"C:\temp\test_2.lyr")
del lyr2
arcpy.mapping.layer()
була заміненаarcpy.mp.LayerFile()