Usunąć widok tabeli w pamięci?


13

W skrypcie Python przeglądam tysiące plików Excela i używam arcpy.MakeTableView do tworzenia widoków tabeli pamięci z pierwszego arkusza kalkulacyjnego w każdym pliku. Jak usunąć odniesienie do widoku w pamięci? Próbowałem usunąć zmienną, która przechowuje nazwę tabeli, ale bezskutecznie.

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

## Process the table here

del tblView

Powodem usunięcia odwołania jest to, że w niektórych przypadkach nazwy arkuszy są duplikowane w plikach Excel. Jeśli widok tabeli został utworzony pod nazwą „Arkusz1”, nie można utworzyć innego widoku tabeli o tej samej nazwie. Ponadto, ze względu na liczbę i rozmiar przetwarzanych plików Excela, martwię się o wpływ na wydajność, jeśli wszystkie te widoki tabel zostaną zachowane przez cały czas istnienia skryptu.


Na marginesie, mogę przypisać inną nazwę do widoku tabeli, która nie jest oparta na nazwie arkusza, i przeglądać pliki bez konfliktów. Chciałbym jednak nadal wiedzieć, jak usunąć odwołanie w pamięci.
Jeff Berry

Odpowiedzi:


15

Jak widać w Usuwanie warstwy obiektów za pomocą skryptu ArcPy? , Uważam, że powinieneś użyć narzędzia do usuwania, aby usunąć widok tabeli po jego utworzeniu.

arcpy.Delete_management(tblView)

Właściwie to spojrzałem na to pytanie, ale nie sądziłem, aby miało to zastosowanie. Ale po wypróbowaniu rzeczywiście działa w widoku tabeli w pamięci. Powinienem spróbować przed opublikowaniem. Dzięki Nathanus.
Jeff Berry

1

arcpy.env.overwriteOutput = True


1
Zastąpiłoby to tabelę nową tabelą, tylko jeśli nowy proces wygeneruje tabelę o tej samej nazwie. Nie usunie konkretnie tabeli w pamięci.
Devdatta Tengshe,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.