﻿{"id":1877,"date":"2015-06-09T08:30:06","date_gmt":"2015-06-09T06:30:06","guid":{"rendered":"http:\/\/www.sigterritoires.fr\/?p=1877"},"modified":"2015-06-09T08:30:06","modified_gmt":"2015-06-09T06:30:06","slug":"arcgis-et-python-3-votre-premier-script","status":"publish","type":"post","link":"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/","title":{"rendered":"ArcGis et Python (3)  : votre premier script"},"content":{"rendered":"<p>Si vous avez lu les deux articles pr\u00e9c\u00e9dents\u00a0 <a href=\"http:\/\/wp.me\/p64R1U-sO\">ArcGis et Python :Avant de faire vos premiers pas<\/a> et\u00a0 <a href=\"http:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-2-pour-bien-demarrer\/\">ArcGis et Python : pour bien d\u00e9marrer<\/a>, vous \u00eates pr\u00eat pour vous lancer.<\/p>\n<p>Il y a deux choses que vous devez apprendre : le langage Python et comment utiliser la biblioth\u00e8que de g\u00e9otraitement Python d&rsquo;ArcGis. En ce qui concerne le langage Python, des tutoriaux ne manquent pas. Mais n&rsquo;oubliez pas que vous en aurez besoin que des bases du langage. Vous allez essentiellement encha\u00eener des outils ArcGis d\u00e9j\u00e0 tous faits.<\/p>\n<p>Nous allons voir ici un premier exemple de script et son int\u00e9gration dans votre toolbox personnelle.<!--more-->Ne faisons pas dans l&rsquo;originalit\u00e9. On va encore utiliser l&rsquo;outil <em><strong>Clip<\/strong> <\/em>(d\u00e9coupe) d&rsquo;une couche. Disons que nous voulons adapter l&rsquo;outil <em><strong>Clip<\/strong> <\/em>pour que l&rsquo;outil d\u00e9coupe automatiquement toutes les couches situ\u00e9es das un espace de travail (r\u00e9pertoire, geodatabase), en stockant les r\u00e9sultats dans un autre espace de travail.<\/p>\n<p>On pourrait faire un mod\u00e8le avec Model Builder en utilisant un it\u00e9rateur en entr\u00e9e de donn\u00e9es. Et d&rsquo;ailleurs c&rsquo;est surement ce que vous feriez actuellement si vous ne faites que d\u00e9marrer avec Python. Voyons donc comment faire la m\u00eame chose en Python.<\/p>\n<p>Nous allons utiliser pour l&rsquo;exemple <em>PyScripter,<\/em> mais pour cet exemple, vous n&rsquo;avez m\u00eame pas besoin d&rsquo;IDE. Un \u00e9diteur de texte peut tr\u00e8s bien faire l&rsquo;affaire. Par contre, sachez que dans Python, l&rsquo;indentation des lignes fait partie de la syntaxe et que taper une ligne de code en d\u00e9but de ligne ou apr\u00e8s une ou deux tabulations ne veut pas dire la m\u00eame chose.<\/p>\n<p>Un IDE vous positionnera automatiquement l\u00e0 o\u00f9 il faut.<\/p>\n<p>Lancez votre IDE ou ouvrez votre \u00e9diteur de texte.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1882\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py30\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?fit=1600%2C836&amp;ssl=1\" data-orig-size=\"1600,836\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py30\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?fit=630%2C329&amp;ssl=1\" class=\"aligncenter size-large wp-image-1882\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30-630x329.png?resize=630%2C329\" alt=\"ouverture de Pyscripter\" width=\"630\" height=\"329\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?resize=630%2C329&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?resize=300%2C157&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?w=1600&amp;ssl=1 1600w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py30.png?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Vous allez taper votre ligne incontournable<\/p>\n<p><em><strong>import arcpy<\/strong><\/em><\/p>\n<p>sans laquelle Python ne conna\u00eet pas du tout les traitements ArcGis.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1883\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py31\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png?fit=440%2C348&amp;ssl=1\" data-orig-size=\"440,348\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py31\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png?fit=440%2C348&amp;ssl=1\" class=\"aligncenter size-full wp-image-1883\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png?resize=440%2C348\" alt=\"d\u00e9tail deu texte pr\u00e9dictif de pyscripter\" width=\"440\" height=\"348\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png?w=440&amp;ssl=1 440w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py31.png?resize=300%2C237&amp;ssl=1 300w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><\/a><\/p>\n<p>Vous allez en rajouter une deuxi\u00e8me, qui appelle le module <em><strong><span class=\"usertext\">os<\/span><\/strong><\/em> qui offre un acc\u00e8s rapide aux outils fondamentaux du syst\u00e8me d&rsquo;exploitation. Certaines m\u00e9thodes de gestion des noms de fichiers du module <em><strong><span class=\"usertext\">os<\/span> <\/strong><\/em>seront utilis\u00e9es dans ce script.<\/p>\n<p><em><strong>import os<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1884\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py32\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png?fit=762%2C594&amp;ssl=1\" data-orig-size=\"762,594\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py32\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png?fit=630%2C491&amp;ssl=1\" class=\"aligncenter size-large wp-image-1884\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32-630x491.png?resize=630%2C491\" alt=\"d\u00e9tail de l'aide de pyscripter\" width=\"630\" height=\"491\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png?resize=630%2C491&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png?resize=300%2C234&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py32.png?w=762&amp;ssl=1 762w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Le script aura deux parties:<\/p>\n<ul>\n<li>la premi\u00e8re o\u00f9 vous allez d\u00e9finir les donn\u00e9es en entr\u00e9e et en sortie<\/li>\n<li>le deuxi\u00e8me o\u00f9 vous allez ex\u00e9cuter les traitements<\/li>\n<\/ul>\n<h2>D\u00e9finition des donn\u00e9es en entr\u00e9e et en sortie<\/h2>\n<p>Cette partie a un double int\u00e9r\u00eat. Bien s\u00fbr pour l&rsquo;ex\u00e9cution du traitement il faut que l&rsquo;outil sache sur quelle donn\u00e9e travailler. Mais aussi parce que pour pouvoir ex\u00e9cuter le script en tant qu&rsquo;outil de la toolbox il va falloir cr\u00e9er la fen\u00eatre de param\u00e9trage qui sera affich\u00e9 lors du lancement de l&rsquo;outil. Il faudra alors reprendre, une par une, les d\u00e9finitions de notre script pour cr\u00e9er un champ d&rsquo;entr\u00e9e dans la fen\u00eatre. Vous avez donc tout int\u00e9r\u00eat \u00e0 commenter vos lignes de code pour bien vous retrouver au bout du processus.<\/p>\n<p>Nous allons utiliser 4 variables en entr\u00e9e\/sortie<\/p>\n<ul>\n<li>l&rsquo;espace de travail dans lequel se trouvent les couches \u00e0 d\u00e9couper<\/li>\n<li>la couche qui servira \u00e0 d\u00e9couper les autres<\/li>\n<li>l&rsquo;espace de travail o\u00f9 mettre les couches d\u00e9coup\u00e9es r\u00e9sultantes<\/li>\n<li>la tol\u00e9rance \u00e0 utiliser par l&rsquo;outil D\u00e9coupe<\/li>\n<\/ul>\n<p>Entrez les lignes de code suivantes:<\/p>\n<p><em><strong># Espace de travail en entr\u00e9e : Type WORKSPACE<\/strong><\/em><br \/>\n<em><strong> arcpy.env.workspace = arcpy.GetParameterAsText(0)<\/strong><\/em><\/p>\n<p><em><strong>#Classe d&rsquo;entit\u00e9s servant \u00e0 d\u00e9couper Type FEATURECLASS<\/strong><\/em><br \/>\n<em><strong> clipFeatures = arcpy.GetParameterAsText(1)<\/strong><\/em><\/p>\n<p><em><strong># Espace de travail en sortie : Type WORKSPACE<\/strong><\/em><br \/>\n<em><strong> outWorkspace = arcpy.GetParameterAsText(2)<\/strong><\/em><\/p>\n<p><em><strong># Tol\u00e9rance XY de l&rsquo;outil D\u00e9coupe : Type DOUBLE<\/strong><\/em><br \/>\n<em><strong> clusterTolerance = arcpy.GetParameterAsText(3)<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1885\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py33\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png?fit=468%2C428&amp;ssl=1\" data-orig-size=\"468,428\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py33\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png?fit=468%2C428&amp;ssl=1\" class=\"aligncenter size-full wp-image-1885\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png?resize=468%2C428\" alt=\"d\u00e9finition des entr\u00e9es et des sorties du script python\" width=\"468\" height=\"428\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png?w=468&amp;ssl=1 468w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py33.png?resize=300%2C274&amp;ssl=1 300w\" sizes=\"auto, (max-width: 468px) 100vw, 468px\" \/><\/a><\/p>\n<p>La fonction <em><strong>GetParameterAsText<\/strong> <\/em>r\u00e9cup\u00e8re les param\u00e8tres en entr\u00e9e du script. Si vous voulez l&rsquo;ex\u00e9cuter en ligne de commande (dans une fen\u00eatre de commande) vous utiliserez un commande de type<\/p>\n<p><em><strong>python.exe \u00ab\u00a0patram\u00e8tre1\u00a0\u00bb \u00ab\u00a0param\u00e8tre2\u00a0\u00bb \u00ab\u00a0param\u00e8tre3\u00a0\u00bb Nombre<\/strong><\/em><\/p>\n<p>Si, comme nous le verrons plus loin, vous utilisez un outil de la toolbox, vous devrez faire correspondre l&rsquo;ordre des champs de la fen\u00eatre de dialogue avec l&rsquo;ordre d\u00e9fini dans les variables du script: le premier champ de la fen\u00eatre de dialogue devra \u00eatre l&rsquo;espace de travail en entr\u00e9e, le deuxi\u00e8me la couche de d\u00e9coupe, etc.<\/p>\n<p>Dans nos quatre d\u00e9finitions, la premi\u00e8re est une d\u00e9finition d&rsquo;une variable ArcGis, c&rsquo;est l&rsquo;espace de travail courant, tandis que les trois autres sont des variables propres \u00e0 ce script.<\/p>\n<h2>Le corps du script : le traitement<\/h2>\n<p>Avant de commencer \u00e0 rentrer les lignes de code du traitement en lui-m\u00eame, nous allons rentrer un instruction bizarre. Nous allons taper simplement<\/p>\n<p><em><strong>try:<\/strong><\/em><\/p>\n<p>A la fin de notre traitement nous allons rentrer l&rsquo;instruction compl\u00e9mentaire de celle-ci : <em><strong>except<\/strong><\/em><\/p>\n<p>Elles ne sont pas obligatoires. Si vous ne les entrez pas, le script fonctionnera sans probl\u00e8me, sauf&#8230; quand il y aura un probl\u00e8me. Si une erreur survient lors du traitement et que vous n&rsquo;avez pas ces instructions, vous aurez une belle fen\u00eatre \u00ab\u00a0ArcGis a rencontr\u00e9 une erreur et doit \u00eatre ferm\u00e9&#8230;\u00a0\u00bb.<br \/>\nPar contre, si vous avez mi try\/except, si une erreur survient dans le corps du traitement, au lieu de planter le syst\u00e8me, le script ex\u00e9cutera les instructions qu&rsquo;il trouvera dans le paragraphe except (en g\u00e9n\u00e9ral l&rsquo;affichage d&rsquo;un message d&rsquo;erreur et d&rsquo;une explication de celui-ci), tout en vous rendant la main de mani\u00e8re propre.<\/p>\n<p>La premi\u00e8re instruction que nous allons rentrer correspond \u00e0 la cr\u00e9ation de la liste des couches pr\u00e9sentes dans l&rsquo;espace de travail en entr\u00e9e et qu&rsquo;il faudra d\u00e9couper.<\/p>\n<p><em><strong>fcs = arcpy.ListFeatureClasses()<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1886\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py34\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png?fit=692%2C370&amp;ssl=1\" data-orig-size=\"692,370\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py34\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png?fit=630%2C337&amp;ssl=1\" class=\"aligncenter size-large wp-image-1886\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34-630x337.png?resize=630%2C337\" alt=\"gestion des erreurs dans python\" width=\"630\" height=\"337\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png?resize=630%2C337&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png?resize=300%2C160&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py34.png?w=692&amp;ssl=1 692w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Notez que les lignes ne commencent pas au d\u00e9but de la ligne. L&rsquo;indentation indique \u00e0 Python que cette commande est \u00e0 l&rsquo;int\u00e9rieur de la commande<em><strong> try<\/strong><\/em>.<br \/>\nLa variable <em><strong>fcs<\/strong> <\/em>contiendra la liste des couches \u00e0 d\u00e9couper. L&rsquo;instruction <em><strong>ListFeatureClasses<\/strong><\/em> g\u00e9n\u00e8re la liste des classes d&rsquo;entit\u00e9s de l&rsquo;espace de travail courant. Rappelez vous, nous l&rsquo;avons d\u00e9fini dans la premi\u00e8re instruction du script, le param\u00e8tre 0.<\/p>\n<p>Maintenant que nous avons la liste des couches \u00e0 traiter, nous allons mettre une instruction de type boucle pour que le traitement se r\u00e9p\u00e8te sur chacune des couches de la liste<\/p>\n<p><em><strong>for fc in fcs:<\/strong><\/em><\/p>\n<p>Dans cette boucle nous allons d\u00e9couper une couche en entr\u00e9e et cr\u00e9er une couche en sortie. Avant de la d\u00e9couper, nous devons g\u00e9rer certains choses dont nous nous sommes jusqu&rsquo;\u00e0 pr\u00e9sent d\u00e9charg\u00e9s sur ArcGis, soit sur les commandes soit sur les outils de la toolbox. Par exemple, si notre espace de travail en entr\u00e9e est une g\u00e9odatabase et que nous d\u00e9finissons notre espace de sortie comme un r\u00e9pertoire, les couches en sortie seront des fichiers <a href=\"https:\/\/www.sigterritoires.fr\/index.php\/frshapefile-vs-geopackage-quel-format-choisir\/\">shapefile<\/a>. Pas de probl\u00e8me, sauf que les noms des shapefile sont beaucoup plus contraignants que ceux de la g\u00e9odatabase. Nous risquons d&rsquo;avoir des noms trop longs ou avec des points ou des tirets. Dans un script, c&rsquo;est \u00e0 nous de g\u00e9rer ce type de probl\u00e8me. Rassurez vous. Ce n&rsquo;est pas compliqu\u00e9, mais il faut le faire.<\/p>\n<p>Il suffit d\u2019appeler la fonction <em><strong>ValidateTableName<\/strong> <\/em>qui transforme les noms en entr\u00e9e dans des noms corrects en sortie, tout en s&rsquo;assurant qu&rsquo;il n&rsquo;y a pas de noms r\u00e9p\u00e9t\u00e9es en sortie.<\/p>\n<p><em><strong>featureClassName = arcpy.ValidateTableName(fc, outWorkspace)<\/strong><\/em><br \/>\n<em><strong> outFeatureClass = os.path.join(outWorkspace, featureClassName)<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1887\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py35\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png?fit=684%2C452&amp;ssl=1\" data-orig-size=\"684,452\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py35\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png?fit=630%2C416&amp;ssl=1\" class=\"aligncenter size-large wp-image-1887\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35-630x416.png?resize=630%2C416\" alt=\"boucle de traitement dans python\" width=\"630\" height=\"416\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png?resize=630%2C416&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png?resize=300%2C198&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py35.png?w=684&amp;ssl=1 684w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Maintenant nous allons d\u00e9couper la couche en entr\u00e9e avec la couche de d\u00e9coupe. Mais si la couche de d\u00e9coupe se trouve dans l&rsquo;espace de travail en entr\u00e9e, nous ne voulons pas la d\u00e9couper! Nous mettons un test pour faire la d\u00e9coupe \u00e0 condition que le nom de la couche \u00e0 d\u00e9couper soit diff\u00e9rent de celui qui d\u00e9coupe:<\/p>\n<p><em><strong>if fc != os.path.basename(clipFeatures):<\/strong><\/em><\/p>\n<p>Cette fonction r\u00e9cup\u00e8re juste le nom du fichier, sans le chemin, car dans notre liste en entr\u00e9e nous n&rsquo;avons que les noms sans chemin.<br \/>\nPuis la fonction de d\u00e9coupe:<\/p>\n<p><em><strong>arcpy.Clip_analysis(fc, clipFeatures, outFeatureClass, clusterTolerance)<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1888\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py36\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png?fit=750%2C520&amp;ssl=1\" data-orig-size=\"750,520\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py36\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png?fit=630%2C437&amp;ssl=1\" class=\"aligncenter size-large wp-image-1888\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36-630x437.png?resize=630%2C437\" alt=\"corps du traitement dans le script python\" width=\"630\" height=\"437\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png?resize=630%2C437&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png?resize=300%2C208&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py36.png?w=750&amp;ssl=1 750w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Voil\u00e0! C&rsquo;est fini pour le traitement.<\/p>\n<p>Nous devons maintenant renseigner quoi faire en cas d&rsquo;erreur:<\/p>\n<p><em><strong>except Exception as err:<\/strong><\/em><br \/>\n<em><strong> arcpy.AddError(err)<\/strong><\/em><br \/>\n<em><strong> print err<\/strong><\/em><\/p>\n<p>Comme le script peut \u00eatre ex\u00e9cut\u00e9 dans un outil toolbox ou tout seul, nous avons deux affichages de l&rsquo;erreur. <em><strong>AddError<\/strong> <\/em>va ajouter le message d&rsquo;erreur dans la fen\u00eatre de r\u00e9sultat de l&rsquo;outil toolbos. <em><strong>Print<\/strong> <\/em>va afficher l&rsquo;erreur dans la fen\u00eatre de commande si le script est ex\u00e9cut\u00e9 tout seul.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1889\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py37\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png?fit=718%2C538&amp;ssl=1\" data-orig-size=\"718,538\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py37\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png?fit=630%2C472&amp;ssl=1\" class=\"aligncenter size-large wp-image-1889\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37-630x472.png?resize=630%2C472\" alt=\"gestion des erreurs dfansle script python\" width=\"630\" height=\"472\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png?resize=630%2C472&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py37.png?w=718&amp;ssl=1 718w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a><\/p>\n<p>Notez l&rsquo;indentation de <em><strong>except<\/strong><\/em>. Il se place au m\u00eame niveau que <em><strong>try<\/strong><\/em>.<\/p>\n<p>Enregistrer votre fichier. Il est pr\u00eat pour passer dans la Toolbox.<\/p>\n<h2>Ajout du script dans la toolbox<\/h2>\n<p>Dans la Toolbox, chargez une bo\u00eete \u00e0 outils personnelle (ici <em><strong>Mes Scripts<\/strong><\/em>).<br \/>\nCliquez droit sur la bo\u00eete \u00e0 outils et s\u00e9lectionnez <em><strong>Ajouter-&gt;Script<\/strong><\/em><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1890\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py38\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png?fit=530%2C384&amp;ssl=1\" data-orig-size=\"530,384\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py38\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png?fit=530%2C384&amp;ssl=1\" class=\"aligncenter size-full wp-image-1890\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png?resize=530%2C384\" alt=\"ajouter un script python dans une bo\u00eete \u00e0 outils arcgis\" width=\"530\" height=\"384\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png?w=530&amp;ssl=1 530w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py38.png?resize=300%2C217&amp;ssl=1 300w\" sizes=\"auto, (max-width: 530px) 100vw, 530px\" \/><\/a>La premi\u00e8re fen\u00eatre permet de d\u00e9finir le Nom de l&rsquo;outil (sans espaces ni caract\u00e8res sp\u00e9ciaux) et l&rsquo;\u00e9tiquette qui appara\u00eetra dans l&rsquo;affichage de la bo\u00eete \u00e0 outils (avec espaces et caract\u00e8res sp\u00e9ciaux si vous voulez).<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1891\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py39\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png?fit=448%2C560&amp;ssl=1\" data-orig-size=\"448,560\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py39\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png?fit=448%2C560&amp;ssl=1\" class=\"aligncenter size-full wp-image-1891\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png?resize=448%2C560\" alt=\"nom de l'outil\" width=\"448\" height=\"560\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png?w=448&amp;ssl=1 448w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py39.png?resize=240%2C300&amp;ssl=1 240w\" sizes=\"auto, (max-width: 448px) 100vw, 448px\" \/><\/a>La deuxi\u00e8me fen\u00eatre permet de faire le lien avec notre script.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1892\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py40\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png?fit=444%2C556&amp;ssl=1\" data-orig-size=\"444,556\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py40\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png?fit=444%2C556&amp;ssl=1\" class=\"aligncenter size-full wp-image-1892\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png?resize=444%2C556\" alt=\"lien avec le script python\" width=\"444\" height=\"556\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png?w=444&amp;ssl=1 444w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py40.png?resize=240%2C300&amp;ssl=1 240w\" sizes=\"auto, (max-width: 444px) 100vw, 444px\" \/><\/a>La derni\u00e8re fen\u00eatre c&rsquo;est celle qui demande le plus de travail. Vous allez d\u00e9finir lrs c=hamps d&rsquo;entr\u00e9e de param\u00e8tres de la fen\u00eatre de l&rsquo;outil.<\/p>\n<p>Pour chaque param\u00e8tre du script (nous en avons quatre) il faudra une ligne. Dans la colonne <em><strong>Nom complet <\/strong><\/em>vous tapez le texte que vous voulez voir \u00e0 c\u00f4t\u00e9 du champ d&rsquo;entr\u00e9e dans la fen\u00eatre de dialogue.<\/p>\n<p>Dans la colonne <em><strong>Type de donn\u00e9es<\/strong><\/em> vous devez indiquer le type de donn\u00e9e \u00e0 entrer dans le champ de la fen\u00eatre de dialogue.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1893\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py41\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png?fit=440%2C552&amp;ssl=1\" data-orig-size=\"440,552\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py41\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png?fit=440%2C552&amp;ssl=1\" class=\"aligncenter size-full wp-image-1893\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png?resize=440%2C552\" alt=\"d\u00e9finition des entr\u00e9es et sorties poutr le menu de l'outil\" width=\"440\" height=\"552\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png?w=440&amp;ssl=1 440w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py41.png?resize=239%2C300&amp;ssl=1 239w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><\/a>Pour le premier param\u00e8tre du script (param\u00e8tre 0) nous indiquons \u00ab\u00a0<em><strong>Espace de travail en entr\u00e9e<\/strong><\/em>\u00a0\u00bb et le type de donn\u00e9es \u00ab\u00a0<em><strong>Espace de travail<\/strong><\/em>\u00ab\u00a0.<\/p>\n<p>Voici la capture d&rsquo;\u00e9cran avec l&rsquo;ensemble des d\u00e9finitions pour notre script.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1894\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py42\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png?fit=444%2C552&amp;ssl=1\" data-orig-size=\"444,552\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py42\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png?fit=444%2C552&amp;ssl=1\" class=\"aligncenter size-full wp-image-1894\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png?resize=444%2C552\" alt=\"entr\u00e9es et sorties termin\u00e9es\" width=\"444\" height=\"552\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png?w=444&amp;ssl=1 444w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py42.png?resize=241%2C300&amp;ssl=1 241w\" sizes=\"auto, (max-width: 444px) 100vw, 444px\" \/><\/a>L&rsquo;ordre des lignes est tr\u00e8s importante. La premi\u00e8re ligne sera le premier param\u00e8tre d\u00e9fini dans le script, param\u00e8tre 0. La deuxi\u00e8me ligne correspondra ai=u deuxi\u00e8me param\u00e8tre, param\u00e8tre 1. Et ainsi de suite.<\/p>\n<p>Une fois termin\u00e9, fermez la fen\u00eatre d&rsquo;ajout de script. Vous pouvez maintenant l&rsquo;ex\u00e9cuter comme tous les autres outils, en double cliquant dessus dans la Toolbox.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1895\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/arcgis-et-python-3-votre-premier-script\/py43\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png?fit=1092%2C666&amp;ssl=1\" data-orig-size=\"1092,666\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"py43\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png?fit=630%2C384&amp;ssl=1\" class=\"aligncenter size-large wp-image-1895\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43-630x384.png?resize=630%2C384\" alt=\"fen\u00eatre de l'outil utilisant l script python\" width=\"630\" height=\"384\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png?resize=630%2C384&amp;ssl=1 630w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png?resize=300%2C183&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2015\/06\/py43.png?w=1092&amp;ssl=1 1092w\" sizes=\"auto, (max-width: 630px) 100vw, 630px\" \/><\/a>Vous retrouvez les quatre param\u00e8tres \u00e0 rentrer.<\/p>\n<p>Non seulement vous avez un nouvel outil qui peut s&rsquo;ex\u00e9cuter \u00e0 partir de la toolbox mais vous pourrez l&rsquo;inclure dans un mod\u00e8le de Model Builder.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Si vous avez lu les deux articles pr\u00e9c\u00e9dents\u00a0 ArcGis et Python :Avant de faire vos premiers pas et\u00a0 ArcGis et Python : pour bien d\u00e9marrer, vous \u00eates pr\u00eat pour vous lancer. Il y a deux choses&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"give_campaign_id":0,"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"sfsi_plus_gutenberg_text_before_share":"","sfsi_plus_gutenberg_show_text_before_share":"","sfsi_plus_gutenberg_icon_type":"","sfsi_plus_gutenberg_icon_alignemt":"","sfsi_plus_gutenburg_max_per_row":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[145,222],"tags":[15,131,223,116],"class_list":["post-1877","post","type-post","status-publish","format-standard","hentry","category-arcgis","category-python","tag-arcgis","tag-python","tag-script","tag-toolbox"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p6XU0A-uh","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/1877","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/comments?post=1877"}],"version-history":[{"count":0,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/1877\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/media?parent=1877"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/categories?post=1877"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/tags?post=1877"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}