Nếu bạn đang xóa đúng cả hai đối tượng hàng và con trỏ (ví dụ del row, rows
) và khóa vẫn còn, thì có khả năng là do bản thân ArcMap, không phải Arcpy, vẫn tham chiếu đến nó.
Là shapefile được tham chiếu bởi một lớp trong mục lục hay nó được thêm vào TOC bởi công cụ tập lệnh của bạn?
Nếu sau này, bạn có thể thử tắt "Thêm kết quả của hoạt động xử lý địa lý vào màn hình" trong Công cụ địa lý-> Tùy chọn xử lý địa lý trong ArcMap.
Một đề xuất bổ sung: Nếu bạn đang thực hiện việc này dưới dạng tập dữ liệu tạm thời / trung gian và số lượng tính năng không quá lớn, hãy thử sử dụng in_memory
không gian làm việc thay vì shapefile để khắc phục hoàn toàn vấn đề khóa và tăng hiệu suất tiềm năng tốt .
Chỉ cần chắc chắn xóa không gian làm việc in_memory hoặc bộ dữ liệu cụ thể bạn tạo ở đó bằng cách sử dụng Xóa (Quản lý dữ liệu) trước khi thoát tập lệnh, nếu không nó sẽ tiếp tục nằm trong bộ nhớ cho đến khi ứng dụng đóng lại.
Cuối cùng tôi cũng sẽ lưu ý rằng hành vi khóa shapefile đã thay đổi trong 10.0 để trở nên nghiêm ngặt hơn bằng cách không xóa các tệp khóa khi bạn xóa một lớp khỏi mục lục. Xem thêm bài viết này và câu hỏi liên quan này .