フィールドがフィーチャクラスに存在するかどうかを検索します
数十のフィーチャクラスがあり、そのうちの1つに探しているフィールドが含まれています。それらはいくつかの異なるファイルジオデータベースに格納されます。 各フィーチャクラスを検索して、自分のフィールドを持つフィーチャクラスをすばやく見つける方法はありますか?それとも、カタログでそれぞれの属性テーブルを確認する必要がありますか?一部のファイルは同じ名前ですが、別の場所に保存されています。 Calculate ValueModelBuilderのツール内でこれを実行できるようにしたいので、必要になるたびに単一のファイルgdbでモデルを実行し、そのgdb内のすべてのフィーチャクラスを検索してフィールドを探します。 。 これまでのところ、gdbファイル内のすべての機能クラスを再帰的に反復する機能クラスイテレータがあります。内部Calculate Valueには、次のコードがあります。 findField(r"%Feature%", "%Search Field%") def findField(fc, fi): lst = arcpy.ListFields(fc) for f in lst: if f.name == fi: return fc else: return "not found" 戻り値はOutput Values文字列として収集されます。フィールドが少なくとも4つに存在するにもかかわらず、すべてのフィーチャクラスの出力は「見つかりません」でした。