Sto cercando di automatizzare varie attività in ArcGIS Desktop (usando ArcMap in generale) con Python, e continuo a aver bisogno di un modo per aggiungere un file di forma alla mappa corrente. (E poi fare cose per esso, ma questa è un'altra storia).
Il meglio che posso fare finora è aggiungere un file di livello alla mappa corrente, usando quanto segue ("addLayer" è un oggetto file di livello):
def AddLayerFromLayerFile(addLayer):
import arcpy
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
arcpy.mapping.AddLayer(df, addLayer, "AUTO_ARRANGE")
arcpy.RefreshActiveView()
arcpy.RefreshTOC()
del mxd, df, addLayer
Tuttavia, i miei dati non elaborati saranno sempre shapefile, quindi devo essere in grado di aprirli. (Equivalentemente: converti un file di forma in un file di livello senza aprirlo, ma preferirei non farlo).