スクリプト ツールのパラメータへのアクセス

下の図は、スクリプト ツールのダイアログ ボックスと、3 つのパラメータ([入力ワークスペース]、[クリップ フィーチャクラス]、および [出力ワークスペース])を示しています。入力ワークスペース内のすべてのフィーチャクラスは、クリップ フィーチャクラスにクリップされ([クリップ(Clip)] ツールを使用して)、出力ワークスペースに書き込まれます。

スクリプト ツール パラメータ

上の図では、ツール ダイアログ ボックスにパラメータ値を入力して、[OK] ボタンをクリックすると、スクリプトは以下のようにGetParameterAsText()を使用してパラメータ値を読み込みます。

# Import arcpy site-package
#
import arcpy
from arcpy import env

# Read the parameter values:
#  1: input workspace
#  2: input clip features
#  3: output workspace
#
inWorkspace   = arcpy.GetParameterAsText(0)
clipFeatures  = arcpy.GetParameterAsText(1)
outWorkspace  = arcpy.GetParameterAsText(2)
env.workspace = inWorkspace

sys.argv および arcpy.GetParameterAsText

パラメータを読み取るには、sys.argv および arcpy 関数 GetParameterAsText() の 2 通りの方法があります。どちらの方法を使用してもかまいません。上の例は、sys.argv を使用するように書き換えることができます。その場合、次のようなコードを使用します。

# Read the parameter values:
#  1: input workspace
#  2: input clip features
#  3: output workspace
#
inWorkspace   = sys.argv[1]
clipFeatures  = sys.argv[2]
outWorkspace  = sys.argv[3]
env.workspace = inWorkspace

sys.argv には、受け入れられる文字数に制限があります。GetParameterAsText() では、文字数制限がありません。その点だけを考えれば、GetParameterAsText を使用することをお勧めします。

sys.argv[0] はスクリプト ファイル名を返します。

関連トピック

5/10/2014