Удаление табличного представления в памяти?

13

В скрипте Python я перебираю тысячи файлов Excel и использую arcpy.MakeTableView для создания в памяти табличных представлений из первой таблицы в каждом файле. Как удалить ссылку на представление в памяти? Я пытался удалить переменную, которая хранит имя таблицы, но безрезультатно.

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

## Process the table here

del tblView

Причиной удаления ссылки является то, что в некоторых случаях имена листов дублируются в файлах Excel. Если табличное представление было создано с именем «Лист1», вы не можете создать другое табличное представление с тем же именем. Кроме того, из-за количества и размера обрабатываемых файлов Excel меня беспокоит влияние на производительность, если все эти табличные представления сохраняются в течение всего срока действия сценария.

Джефф Берри
источник
Как примечание, я могу назначить другое имя для табличного представления, которое не основано на имени листа, и циклически проходить по файлам без конфликтов. Тем не менее, я все еще хотел бы знать, как удалить ссылку в памяти.
Джефф Берри

Ответы:

15

Как видно в разделе Удаление векторного слоя с помощью скрипта ArcPy? Я считаю, что вы должны использовать инструмент удаления, чтобы удалить табличное представление после его создания.

arcpy.Delete_management(tblView)
Nathanus
источник
Я действительно смотрел на этот вопрос, но не думал, что он применим. Но после попытки он действительно работает с табличным представлением в памяти. Надо было попробовать перед публикацией. Спасибо Натанус.
Джефф Берри
1

arcpy.env.overwriteOutput = True

Стив
источник
1
Это перезапишет таблицу только новой, если новый процесс выведет таблицу с тем же именем. Он не удалит таблицу In-memory специально.
Девдатта Тенгше