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 :
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).
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. |
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. |
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 :
- Donnez comme valeur au paramètre des guillemets vides ("").
- Donnez comme valeur au paramètre un signe dièse entre guillemets ("#").
- Indiquez explicitement le nom de paramètre à utiliser, ainsi que sa valeur (en ignorant tous les paramètres, sauf ceux désignés par un nom).
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
- Chaque paramètre facultatif a une valeur par défaut. Si vous entrez un # (signe dièse) entre guillemets, "" (deux guillemets), '' (deux apostrophes) ou une valeur Python None pour un paramètre facultatif, la valeur par défaut de celui-ci est utilisée. Pour les mots-clés, la valeur par défaut est le premier mot-clé de la liste. Pour connaître la valeur par défaut des paramètres d'un outil, consultez l'aide de ce dernier.
- Il est courant d'ignorer des paramètres facultatifs pour parvenir au paramètre à modifier.
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 :
- Les noms des paramètres de tous les jeux de données en entrée prennent le préfixe in_, tandis que ceux des jeux de données en sortie prennent le préfixe out_.
- En général, le jeu de données en entrée est le premier paramètre et le jeu de données en sortie le dernier. Les autres paramètres obligatoires sont placés entre les jeux de données en entrée et en sortie.
- Les paramètres facultatifs se trouvent toujours après les paramètres obligatoires.
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 :
- 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.
- 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.
- 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__