概要
ここでは、ArcPy データアクセス モジュールの Walk 関数を利用する方法をご紹介します。
da.Walk 関数は、指定したディレクトリ内のファイルを再帰的に探索することができます。また、取得対象のデータ タイプやジオメトリ タイプを指定することができます。
サンプル コード
# coding:cp932
# ArcPy サイト パッケージ、os モジュールをインポートします。
import arcpy, os
# 最上位のワークスペースを設定します。
topWorkspace = r"D:FAQ"
# データアクセス モジュールの Walk 関数を使用して、指定フォルダー以下のディレクトリを探索しポリゴンとポリライン フィーチャクラスを取得します。
walk = arcpy.da.Walk(topWorkspace, datatype="FeatureClass", type=["Polygon", "Polyline"])
for dirpath, dirnames, filenames in walk:
print ">Path: " + dirpath
# ワークスペースにフィーチャクラスが存在しない場合は以下の処理を実行します。
if len(filenames) == 0:
print ">> ワークスペース内にフィーチャクラスは存在しませんでした。"
# ワークスペース内の各フィーチャクラスに対して処理を行います。
for filename in filenames:
print ">> " + filename
# 取得したフィーチャクラスのフィールドをリスト化します。
fieldList = arcpy.ListFields(os.path.join(dirpath, filename))
# フィールドの名前とタイプを Field クラスの各プロパティから取得します。
for field in fieldList:
print ">>> Name: " + field.name.ljust(20) + "Type: " + field.type.ljust(20)
免責事項
こちらのサンプルはあくまでもコーディングの見本であり、実行時に発生したエラーの対処方法につきましては、サポート対象外とさせていただきます。また、操作方法やソースコードに関するご質問は別途有償の開発者サポート契約にてご対応させていただきます。なお、コードを実行して生じたいかなる損害についても弊社では責任を負いかねます。
このナレッジはお役に立ちましたか?
フィードバックをいただきありがとうございます!