Jika Anda menghapus objek baris dan kursor dengan benar (mis. del row, rows
) Dan kunci tetap ada, kemungkinan karena ArcMap sendiri, bukan arcpy, masih merujuknya.
Apakah shapefile direferensikan oleh lapisan dalam daftar isi, atau ditambahkan ke TOC oleh alat skrip Anda?
Jika yang terakhir, Anda dapat mencoba menonaktifkan "Tambahkan hasil operasi geoprocessing ke layar" di bawah Geoprocessing-> Opsi Geoprocessing di ArcMap.
Saran tambahan: Jika Anda melakukan ini sebagai dataset sementara / menengah, dan jumlah fitur tidak terlalu besar, coba gunakan in_memory
ruang kerja alih-alih shapefile untuk menyelesaikan masalah penguncian sepenuhnya dan dapatkan potensi peningkatan kinerja yang bagus juga .
Pastikan untuk menghapus ruang kerja in_memory atau set data tertentu yang Anda buat di sana menggunakan Delete (Data Management) sebelum keluar dari skrip, jika tidak maka akan terus berada di memori hingga aplikasi ditutup.
Terakhir saya juga akan mencatat bahwa perilaku penguncian shapefile berubah pada 10.0 menjadi lebih ketat dengan tidak menghapus file kunci ketika Anda menghapus lapisan dari daftar isi. Lihat juga artikel ini dan pertanyaan terkait ini .