Exécution d'outils dans la fenêtre Python

Lors de sa toute première ouverture, la fenêtre Python se présente comme suit :

Fenêtre Python

La section de gauche constitue l'invite de la fenêtre Python principale. C'est là que vous exécutez les commandes Python. La section de droite est la fenêtre d'aide et de syntaxe ; elle affiche les messages afférents aux exécutions d'outils en cours, ainsi que l'aide relative à l'outil, à la fonction ou à la classe actuel(le) au fur et à mesure que vous saisissez son code.

La première étape pour accéder aux outils de géotraitement et aux méthodes du géoprocesseur dans la fenêtre Python consiste à importer le site-package Arcpy. Pour cela, saisissez import arcpy à l'invite, puis appuyez sur Entrée. Une fois arcpy importé, chaque fois qu'un utilisateur saisit arcpy. à l'invite, une liste déroulante apparaît pour présenter la liste des différents outils de géotraitement, méthodes de géoprocesseur et autres fonctionnalités de script. Vous pouvez faire défiler cette liste à l'aide du pointeur de la souris ou des touches HAUT et BAS du clavier. Lorsque vous saisissez des caractères supplémentaires, la liste déroulante est filtrée et n'affiche que les outils ou méthodes correspondant aux caractères entrés. Par exemple, si vous saisissez arcpy.addf dans la fenêtre Python, la liste déroulante présente uniquement les outils ou méthodes commençant par ces caractères. Si vous faites défiler jusqu'à AddField_management, ou cliquez dessus, la touche de tabulation complète automatiquement le nom complet de l'outil au niveau de l'invite. Si vous saisissez une parenthèse de gauche (, l'aide de l'outil AddField_management s'affiche dans la fenêtre d'aide et de syntaxe. Par défaut, le premier paramètre est mis en surbrillance.

Dans Python, les outils sont désignés par leur nom, et non par leur étiquette. L'étiquette de l'outil est affichée en haut de la boîte de dialogue de l'outil ou dans la fenêtre Catalogue. Les noms d'outil sont semblable aux étiquettes d'outil, mais ne contiennent pas d'espaces. Dans Python, l'alias de la boîte à outils apparaît avec le nom d'outil. Cela permet d'éviter les conflits qui pourraient se produire lorsque plusieurs outils portent le même nom. Par exemple, selon votre installation, il peut exister jusqu'à trois outils Clip (Clip_analysis, Clip_arc, Clip_management).

Propriétés d'outil : nom et étiquettePropriétés de boîte à outils : nom, étiquette et alias

Après avoir saisi tous les paramètres requis, appuyez sur la touche Entrée pour lancer l'exécution de l'outil. Les messages d'exécution apparaissent dans la section d'aide et de syntaxe de la fenêtre Python. Le texte des messages peut avoir des couleurs différentes selon le type de message. Les couleurs de texte par défaut et leur signification sont les suivantes :

Couleur

Signification

Noir

Messages d'information standard.

Rouge

Message d'erreur. Aucun résultat n'a été généré.

Orange

Message d'avertissement. Les résultats peuvent différer de ceux escomptés.

Couleur du texte du message d'exécution et signification

Vous pouvez modifier ces couleurs en cliquant avec le bouton droit dans la section d'aide et de syntaxe de la fenêtre Python et en sélectionnant Format.

Paramètres obligatoires et paramètres facultatifs

Les paramètres des outils peuvent être obligatoires ou facultatif. Les paramètres facultatifs sont entourés par des accolades, { }, tandis que les paramètres obligatoires ne le sont pas.

Type de paramètre

Symbole

Signification

Obligatoire

Paramètre obligatoire. Ces paramètres figurent toujours en premier, dans la commande. Vous devez obligatoirement fournir une valeur pour eux.

Facultatif

{ }

Paramètre facultatif. Ces paramètres suivent toujours les paramètres obligatoires. Si vous n'entrez pas de valeur pour un paramètre facultatif, la valeur par défaut est calculée et utilisée. La valeur par défaut d'un paramètre est précisée dans l'aide de l'outil.

Types de paramètre

Les outils peuvent comprendre plusieurs paramètres facultatifs. Quelquefois, seuls certains des paramètres facultatifs d'un outil présentent un intérêt et doivent être définis. Vous disposez de trois méthodes pour ignorer un paramètre facultatif :

Dans l'exemple suivant, l'outil Ajouter un champ est mis en œuvre, mais les quatrième et cinquièmes paramètres sont laissés avec leur valeur par défaut en utilisant les trois techniques :

# Use empty strings to skip optional parameters
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "", "", 120)

# Use the # sign to skip optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", "#", "#", 120)

# Use the parameter name to bypass unused optional arguments
arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", field_length=120)

Valeurs par défaut

Listes déroulantes de paramètres

Des listes déroulantes s'affichent dans la fenêtre Python chaque fois qu'un outil reconnaît des options disponibles pour un paramètre spécifique. Comme dans une boîte de dialogue d'outil, le paramètre identifie et filtre les valeurs appropriées. Par exemple, l'outil AddXY_management accepte uniquement, comme entités en entrée, des classes ou couches d'entités points ; par conséquent, la liste déroulante pour ce paramètre affiche uniquement les couches de points disponibles. De la même façon, les champs énumérés dans la liste déroulante de l'outil DeleteField_management dépendent de la table en entrée.

Paramètres à valeurs multiples

Certains paramètres d'outil peuvent recevoir une seule valeur, tandis que d'autres en acceptent un grand nombre. Lorsque plusieurs valeurs sont admises, vous pouvez les énumérer sous forme de liste Python.

L'outil Supprimer un champ, par exemple, accepte plusieurs valeurs. Pour supprimer plusieurs champs à l'aide de Supprimer un champ, entrez les noms correspondants sous forme de chaînes dans une liste Python.

arcpy.DeleteField_management("c:/base/rivers.shp", ["Type", "Turbidity", "Depth"])

Les paramètres de certains outils, tels que les outils de superposition Union_analysis et Intersect_analysis, se présentent sous forme de tableau : ils comportent plusieurs lignes contenant plusieurs valeurs chacune. Dans le cas d'Union_analysis, le paramètre Entités en entrée prend en charge l'utilisation des classements par priorité, qui permettent de conserver les entités avec une grande précision. Un niveau de priorité est affecté à chaque classe d'entités en entrée sous forme d'une valeur facultative où 1 représente le niveau le plus élevé.

Les paramètres se présentant sous forme de tableaux sont appelés « tables de valeurs ». Les tables de valeurs sont entrées sous forme de « liste de listes » Python. Pour le paramètre Entités en entrée d'Union_analysis, le classement est indiqué après le nom de la classe d'entités ; une virgule sépare les valeurs. Chaque paire de classements de classes d'entités fait partie d'une liste de plus haut niveau (d'où la « liste de listes »). L'exemple ci-dessous illustre la création de ce type de liste. L'environnement d'espace de travail est configuré de manière à ce que vous n'ayez pas à répéter le même espace de travail pour chaque classe d'entités.

arcpy.env.workspace = "D:/St_Johns/data.mdb/neighborhoods"
inputList = [["east", 1],["west", 1],["south", 1],["north", 2]]
arcpy.Union_analysis(inputList, "D:/St_Johns/data.mdb/land_use")

Conventions sur les paramètres

D'une manière générale :

Consultation de l'aide dans la fenêtre Python

Après avoir entré le nom d'une commande, vous disposez de plusieurs méthodes pour obtenir de l'aide concernant son utilisation ou celle d'un outil particulier :

  1. Saisissez le nom de l'outil à l'invite, suivi d'une parenthèse gauche : arcpy.Buffer_analysis(. La fenêtre d'aide et de syntaxe affichera une description de l'utilisation de l'outil ainsi que des informations d'aide concernant celui-ci.
  2. Utilisez la fonction d'aide intégrée de Python en entrant le nom de l'outil sur lequel vous voulez obtenir des renseignements. L'aide s'affichera dans la section principale de la fenêtre Python.
  3. Utilisez l'attribut de fonction intégré de Python __doc__ après l'outil pour afficher la chaîne de la documentation. L'aide s'affichera dans la section principale de la fenêtre Python.
>>> arcpy.Buffer_analysis(
>>> help(arcpy.Buffer_analysis)
>>> print arcpy.Buffer_analysis.__doc__

7/10/2012