Ho usato "in_memory" un po 'di recente. Può essere molto utile, poiché ha il potenziale per aumentare notevolmente la velocità di elaborazione per determinate attività, tuttavia se si lavora con set di dati molto grandi, potrebbe causare l'arresto anomalo del programma.
È possibile utilizzare "in_memory" per definire gli output del processo ... spesso, se sto eseguendo un'attività su una classe di funzionalità, la copierò prima nello spazio di lavoro "in_memory":
inFeature = r'C:\myDir.gdb\myFeature'
memoryFeature = "in_memory" + "\\" + "myMemoryFeature"
arcpy.CopyFeatures_management(inFeature, memoryFeature)
Nota che non devi concatenare MemoryFeature insieme come ho fatto io, potresti scriverlo come "in_memory \ myMemoryFeature", mi piace farlo così per passare facilmente da "in_memory" a una directory fisica. È quindi possibile eseguire processi sulla funzionalità in memoria. Al termine, è possibile invertire il processo per salvarlo in una directory.
Potrei sbagliarmi, ma credo che non sia lo stesso della creazione di un feature layer. i feature layer offrono accesso ai metodi di selezione e ad altre operazioni specifiche dei layer. Pensa alla directory "in_memory" come il vettore equivalente all'oggetto raster (raster = arcpy.Raster (myRasterLocation))
Per ripulire dopo aver usato "in_memory" è sufficiente aggiungere la seguente riga di codice:
arcpy.Delete_management("in_memory")
Spero che sia d'aiuto.