ArcGIS Desktop

  • ドキュメント
  • サポート

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS for Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

データの有無の確認

スクリプトの中でデータが存在するかどうか確認するには、Exists 関数を使用します。

Exists(dataset)

フィーチャクラス、テーブル、データセット、シェープファイル、ワークスペース、レイヤーなどのファイルが、スクリプトの実行時点で現在のワークスペースに存在するかどうかを確認します。この関数は、その要素が存在するかどうかを示すブール値を返します。

Exists 関数

地理データが存在するかどうかを確認する場合には、Exists 関数を使用します。これは、この関数がカタログ パスを認識するからです。カタログ パスは、ArcGIS のみが認識するパスの名前です。以下に例を示します。 D:\Data\Final\Infrastructure.gdb\EastValley\powerlines は、ファイル ジオデータベース Infrastructure の EastValley フィーチャ データセット内にある、powerlines フィーチャクラスを示しています。これは、Windows オペレーティング システムから見ると有効なシステム パスではありません。Infrastructure.gdb(フォルダー) に Infrastructure という名前のファイルは含まれていないからです。つまり、Windows はフィーチャ データセットやフィーチャクラスを認識しないので、os.path.exists のように Python の存在を確認する関数を使用することはできません。当然ながら、ArcGIS ではすべての機能がカタログ パスを適切に処理できます。UNC (Universal Naming Convention) パスを使用することもできます。

import arcpy

arcpy.env.workspace = "d:/St_Johns/data.gdb"
fc = "roads"

# Clip a roads feature class if it exists
#
if arcpy.Exists(fc):
   arcpy.Clip_analysis(fc, "urban_area", "urban_roads")
ヒント:

Exists 関数はジオプロセシング ワークスペースの環境を適用するので、この環境にあるデータについてはベース名を指定するだけでかまいません。

データがエンタープライズ ジオデータベースに存在する場合は、完全修飾名を使用しなければなりません。

import arcpy

arcpy.env.workspace = "Database Connections/Bluestar.sde"
fc = "ORASPATIAL.Rivers"

# Confirm that the feature class exists
#
if arcpy.Exists(fc): 
    print("Verified {} exists".format(fc))

スクリプトの場合、デフォルト設定でどのツールも既存の出力を上書きしないようになっています。この振舞いは、overwriteOutput プロパティを True(arcpy.env.overwriteOutput = True) に設定することで変更できます。overwriteOutput が False の場合に上書きしようとすると、ツールでエラーが発生します。

関連トピック

  • Exists
  • Python でのデータのパスの設定
  • パスの説明 (絶対パス、相対パス、UNC、URL)

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS プラットフォーム

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • スタッフ ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2018 Esri. | プライバシー | リーガル