Daha çox

Arcpy.MakeFeatureLayer yaddaşda olan təbəqə, test zamanı növbəti addım uğursuz olduqda hələ də mövcuddur


Gp.makefeaturelayer ilə yaddaşdaxili çıxış qatı yaratmaq üçün arcgisscripting istifadə etdikdə, try / except blokuna qoyurdum və makefeaturelayer uğursuz olduqda, istisna olmaqla, gp obyektini silirdim. İndi arcpy istifadə edərkən, yaddaş içi çıxış qatının silinməsini təmin etmək üçün boş pəncərəni bağlayıb yenidən açmalıyam.

Makefeaturelayer alətimdən çıxan təbəqəni blokda / cəhddən başqa bir şəkildə necə silə bilərdim? Təşəkkürlər.


arcpy.Delete_management (featureLayer)

Daxil olmaqla

arcpy.env.overwriteOutput = Doğru

ssenariniz daxilində "pis" versiyaları silmək məcburiyyətində qalmadan bir sənədin əvvəlki versiyasını yazacaq.


Kod bloku xaricindəki xüsusiyyət qatını silmək işə yaramır. Kod bloku xaricindəsinizsə, xüsusiyyət təbəqəsi yaradıla bilmədi.

Nəhayət, cəhd blokunun müvəffəq olub-olmamasına baxmayaraq yerinə yetiriləcək bir kod bloku əlavə etməyi məsləhət görürəm. Bunu etsəniz, silməzdən əvvəl xüsusiyyət qatının mövcudluğundan əmin olmalısınız.

cəhd edin: arcpy.MakeFeatureLayer_management (inFeatureClass, "outFeatureLayer", {whereClause}) istisna olmaqla: print arcpy.GetMessages () nəhayət: if arcpy.Exists ("outFeatureLayer"): arcpy.Delete_management ("outFeatureLay")