Daha çox

ExecuteError: ERROR 000358 - arcpy daxilində bir dəyişənin istifadəsi.Select_analysis ()

ExecuteError: ERROR 000358 - arcpy daxilində bir dəyişənin istifadəsi.Select_analysis ()


Arcpy.Select_analysis () bəndinin harada olduğu dəyişəni daxil etməsinə baxdım. və soruşduğum suala çox oxşar olsa da, sintaksisini tətbiq etdikdən sonra eyni problemlə qarşılaşdım. Aşağıdakılar üçün doğru sintaksisin necə tətbiq ediləcəyi ilə bağlı bir şey hələ də əldən verdiyimi hiss edirəm.

where_query = '"field_name" <=' "{0} .format (year_range)"

ArcMap -də yenidən istifadə edilə bilən bir geoprosessor vasitəsi yaratmağa çalışıram, amma aşağıdakı xətanı alıram. Where_query dəyişənini formatlaşdırmağımla bağlı bir problem kimi görünür, amma düzgün başa düşə bilmirəm.

İzləmə (son son zəng): "C:  ArcPy  mean_center_drift.py" faylı, 19 -cu sətirdə  arcpy.Select_analysis (in_feature, year_out_name, where_query) Fayl "c:  program files (x86)  arcgis  desktop10.3  arcpy  arcpy  analysis.py", satır 84, Select e e ExecuteError: ERROR 000358: Yanlış ifadə 1 İcra edilmədi (Seç).

və kod indiki formadadır.

id idarəsi arcpy in_feature = arcpy.GetParameterAsText (0) out_features = arcpy.GetParameterAsText (1) orig_year = arcpy.GetParameterAsText (2) field_name = arcpy.GetParameterAsText (10), 10 = int (mənşə_yılı) + x harada_query = '"sahə_adı" <=' "{0}. format (il_aralığı)" il_adı_adı = os.path.join (xarici xüsusiyyətlər, "İllər_ {0}". format (x)) orta_out_adı = os .path.join (out_features, "Mean_ {0}". format (x)) arcpy.Select_analysis (in_feature, year_out_name, where_query) arcpy.MeanCenter_stats (year_out_name, mean_out_name, "#", "#", "#")

Bu tanış görünür! Məlumatlarınızın harada saxlanılmasından asılı olaraq formatlaşdırmasahə_adıWHERE bəndində dəyişiklik olacaq.

Beləliklə, bunu sizin üçün həll etmək üçün AddFieldDelimiters istifadə edə bilərsiniz.

id idarəsi arcpy in_feature = arcpy.GetParameterAsText (0) out_features = arcpy.GetParameterAsText (1) Origin_year = Arcpy.GetParameterAsText (2) field_name = arcpy.GetParameterAsText (3) AddFieldDelimiters (yol, sahə_adı) x aralığında (10, 140, 10): year_range = int (mənşə_yıl) + x burada_query = "" "{0} <= {1}" "". Format (yeni_sahə_adı, il_aralığı) il_ad_adı = os.path.join (out_features, "Years_ {0}". format (x)) mean_out_name = os.path.join (out_features, "Mean_ {0}". format (x)) arcpy.Select_analysis (in_feature, year_out_name) , harada_sorgu) arcpy.MeanCenter_stats (il_siz_ad, orta_ad, "#", "#", "#")

Videoya baxın: Remove polygon topology error in arcmap.