Suppression de la vue Table en mémoire?


13

Dans un script Python, je fais défiler des milliers de fichiers Excel et j'utilise arcpy.MakeTableView pour créer des vues de table en mémoire à partir du premier spreadhseet de chaque fichier. Comment supprimez-vous la référence à la vue en mémoire? J'ai essayé de supprimer la variable qui stocke le nom de la table, mais en vain.

tblView = sheetName
arcpy.MakeTableView_management(excelSheet, tblView, .....)

## Process the table here

del tblView

La raison de la suppression de la référence est que, dans certains cas, les noms de feuille sont dupliqués dans les fichiers Excel. Si une vue de table a été créée avec le nom "Sheet1", vous ne pouvez pas créer une autre vue de table avec le même nom. De plus, en raison du nombre et de la taille des fichiers Excel en cours de traitement, je suis préoccupé par un impact sur les performances si toutes ces vues de table sont conservées pendant la durée de vie du script.


Tout comme une note latérale, je peux attribuer un nom différent à la vue de table qui n'est pas basé sur le nom de la feuille et parcourir les fichiers sans conflits. Cependant, je voudrais toujours savoir comment supprimer la référence en mémoire.
Jeff Berry

Réponses:


15

Comme indiqué dans Suppression de la couche d'entités à l'aide du script ArcPy? , Je pense que vous devez utiliser l' outil de suppression pour supprimer une vue de table une fois qu'elle a été créée.

arcpy.Delete_management(tblView)

En fait, j'avais examiné cette question, mais je ne pensais pas qu'elle s'appliquait. Mais après l'avoir essayé, il fonctionne en effet sur une vue de table en mémoire. J'aurais dû l'essayer avant de poster. Merci Nathanus.
Jeff Berry

1

arcpy.env.overwriteOutput = True


1
Cela remplacerait uniquement la table par une nouvelle, si le nouveau processus génère une table du même nom. Il ne supprimera pas spécifiquement une table en mémoire.
Devdatta Tengshe
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.