Lấy ID lớp bằng ArcPy?


8

Tôi đang làm việc trong một phiên ArcMap, tôi đã kiểm tra tùy chọn để nhận ID cho từng lớp trong tài liệu của mình, vì vậy bất kỳ ai cũng có nó.

nhập mô tả hình ảnh ở đây

Bây giờ, điều tôi cần là một cách để có được các giá trị này trong tập lệnh python (để sao chép tự động trong bảng): không có thông tin nào như vậy trong các thuộc tính của lớp được mô tả, cũng như từ mô-đun .mapping.


4
Thuộc tính DSIDtrong arcpy.describetrả về ID của tập dữ liệu. bạn đã thử chưa Một ví dụ sẽ là desc = arcpy.Describe("some layer")sau đódesc.DSID
risail

Phiên bản nào của ArcGIS bạn đang sử dụng?
crmackey

Hy Dan, vấn đề là tôi cần ID của một lớp, dường như không có tài sản "ID" có thể truy cập được bằng chức năng mô tả ..
Davide Pavia

Tôi đang làm việc với phiên bản nâng cao 10.3.1.
Davide Pavia

2
Nó không phải là về một lớp cụ thể hoặc lớp tính năng, mà là một cái gì đó chung chung. Để bật id, hãy kiểm tra tùy chọn ("Cho phép gán [...]") trong tab chung của khung dữ liệu.
Davide Pavia

Câu trả lời:


1

Sau khi thử nghiệm điều này trong ArcGIS 10.3, và theo tài liệu có sẵn cho Layer và Describe trong arcpy, và chủ đề này: https://geonet.esri.com/thread/178341 , chức năng này vẫn chưa tồn tại. Bạn không thể truy cập ID lớp từ arcpy. Bạn có thể truy cập nó thông qua ArcObjects nếu bạn có kiến ​​thức.

Như một giải pháp thay thế, bạn có thể nhập ID vào các trường Tín dụng hoặc Mô tả không? Bạn có thể truy cập cả hai lĩnh vực này thông qua arcpy.


Goodborning Jbalk, như bạn đã nói Tôi đã viết lớp Id trong trường của bảng bằng cách sử dụng công cụ Máy tính trường (kiểm tra thủ công giá trị của từng lớp). Cảm ơn rất nhiều vì lời khuyên, ArcObjects là điểm dừng chân tiếp theo của tôi ..
Davide Pavia
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.