Initiation à Python avec ArcGIS

Dimension: px
Commencer à balayer dès la page:

Download "Initiation à Python avec ArcGIS"

Transcription

1 Initiation à Python avec ArcGIS Hervé BOHBOT v. 1.1 décembre 2013 HB Programmation d ArcGIS Support de cours Hervé BOHBOT Ingénieur de recherche, SIG et télédétection Archéologie des Sociétés Méditerranéennes CNRS UMR , avenue de Pérols Lattes

2

3 Sommaire Introduction 1 ère partie Le langage Python 1. Questions préliminaires 5 2. Les bases : principaux types de données et structures Programmation objet avec Python 26 2 ème partie Python avec ArcGIS 4. Python dans ArcGIS Accès aux données Filtres, curseurs, sélections et symbologies Géométries Eléments de mise en page Scripts et outils Création de compléments (add-in) 70 3 Conclusion Annexes

4 Introduction Pourquoi programmer avec ArcGIS? Pour automatiser les tâches répétitives et gagner du temps. Parce qu'on a souvent besoin d une fonction non fournie en standard. Parce que l utilisation de programmes faits par d autres est parfois frustrante. Pour être autonome. 7 HB Programmation d ArcGIS Support de cours Objectifs du cours Découvrir les bases du langage Python. Fournir de petits exemples de codes réutilisables (snippets). Permettre de comprendre, modifier, utiliser des scripts ou programmes écrits en Python. Savoir utiliser les outils de géotraitement, manipuler des données géographiques et automatiser des tâches pour gagner du temps. Donner l'envie d'aller plus loin. 8 HB Programmation d ArcGIS Support de cours 4

5 1. Questions préliminaires HB Programmation d ArcGIS Support de cours Sommaire Quels outils et pour quoi faire? Qu'est-ce que Python? Pourquoi utiliser Python? Quelle version avec ArcGIS? Comment utiliser Python? La fenêtre Python dans ArcGIS Editeurs externes : IDLE, PythonWin, PyScripter 10 HB Programmation d ArcGIS Support de cours 5

6 Quels outils pour quoi faire? L environnement de développement d ArcGIS est constitué de divers outils. Personnaliser l'interface d'arcgis boîte de dialogue Personnaliser. Ajouter des éléments à l'interface utilisateur (boutons, menus, barres d'outils ) compléments (add-in), développés en.net, Java ou Python (depuis la v. 10.1). Créer une application autonome basée sur des composants d'arcgis, gérer l'interactivité avec l'utilisateur (souris, clavier, etc.) développement avec.net (Visual Studio Express) ou Java (Eclipse), basé sur la librairie ArcObjects. Enchaîner un ensemble de traitements sans programmation Model builder. Automatiser l'utilisation d'outils de géotraitement, la lecture et l'écriture de données, la production cartographique développement avec des scripts Python. Faire tout ça (sauf les applications autonomes) VBA avec ArcObjects, mais disparition annoncée (ArcGIS 11). 11 HB Programmation d ArcGIS Support de cours Qu est-ce que Python? Langage de programmation, structuré et orienté objet. Licence open source, multiplateformes (Windows, Linux/Unix, Mac Os ). Syntaxe relativement simple. Créé en 1991 par Guido van Rossum (toujours développeur du projet). Nommé en référence aux Monty Python (!) Diverses implémentation : CPython (standard), Jython (java), IronPython Site web : Versions courantes : et Fichiers Python : simples fichiers texte (extension *.py). Dans l'anglaise langue, se prononce [paille-feun] 12 HB Programmation d ArcGIS Support de cours 6

7 Pourquoi utiliser Python? Langage facilement lisible : utilisation d'espaces et d'indentations plutôt que des caractères ou des mots-clés pour délimiter les blocs de commandes. Très nombreux modules dans la distribution standard. Syntaxe "élégante" : il faut souvent trois fois moins de lignes que pour écrire la même chose dans un autre langage. Approche "multi-paradigme" : la programmation peut être orientée objet ou procédurale, ce qui permet une flexibilité dans la résolution d'un problème. Langage extensible : des bibliothèques permettent d'ajouter des fonctionnalités à la distribution standard du logiciel (connexion à une base de donnée, interface graphique (wxpython, PyQt), traitement XML (pyxml), traitement d'images. Interfaces avec des bibliothèques écrites dans d'autres langages (numpy pour le calcul scientifique, écrit en C). Largement utilisé : langage de scripts de nombreux logiciels (SPSS, Gimp, Maya ) et des jeux (Quake ), administration du moteur de recherche Google HB Programmation d ArcGIS Support de cours Quel Python avec ArcGIS? 9.x : Introduction de Python comme langage de script pour ArcGIS. PYTHON version 2.7 livrée avec ArcGIS 10.1 Installation de Python par défaut dans le répertoire c:\python27 Chaque version d ArcGIS est prévue pour fonctionner avec une version Python donnée, installée avec : Développer avec ArcGIS, où comment régulièrement reprogrammer la roue : AML (pour ArcInfo, jusqu'à 7.x) Avenue (pour ArcView, jusqu'à 3.x) VBA (ArcGIS 8.0 à 10.2) Langages propriétaires Net (VB, C#) Java, Python 14 HB Programmation d ArcGIS Support de cours 7

8 Où utiliser Python? Les programmes écrits en Python (scripts) peuvent être exécutés dans une application ArcGIS ou en dehors d ArcGIS. Les fichiers Python (*.py) sont de simples fichiers texte qui peuvent être écrits avec de nombreux éditeurs. Des versions "compilées" (*.pyc, *.pyo) peuvent être générées à partir des fichiers *.py Ligne de commande : menu Démarrer, ArcGIS, Python 2.7, Python (command line) «Fenêtre Python» dans les applications ArcGIS. Environnements de développement intégré (IDE), fournissant plus ou moins de confort de développement : IDLE et PythonWin fournis avec ArcGIS (assez basiques) ou tiers. 15 HB Programmation d ArcGIS Support de cours Fenêtre Python Menu Géotraitement / Python ou icône Prompt >>> Entrée 2 fois exécute la commande 1 Fenêtre de commande Fenêtre d aide (syntaxe des fonctions ) La fenêtre Python permet d exécuter une ou plusieurs lignes de code structuré et remplace la ligne de Commande des versions d ArcGIS < HB Programmation d ArcGIS Support de cours 8

9 Python IDLE Python s Integrated DeveLopment Environment Menu Démarrer / ArcGIS / Python 2.7 / IDLE (Python GUI) Interface développée en Python, basée sur la librairie graphique Tk/Tcl. Nombreuses autres interfaces de développement pour Python. 17 HB Programmation d ArcGIS Support de cours PythonWin Application plus livrée depuis ArcGIS 10.1 et à télécharger sur version en cours build 218) Extensions Python pour Microsoft Windows (accès aux objets de l API Win32 et aux objets COM). Débogueur intégré. Nécessaire pour exécuter d anciens scripts ArcGIS et ceux utilisant la librairie win32com. 18 HB Programmation d ArcGIS Support de cours 9

10 PyScripter Editeur gratuit et open source, fournissant un environnement de développement très élaboré et confortable : Multifenêtrage et onglets : console, fenêtres de code, débogage, variables, etc. Auto-complétion du code détaillée. Pour utiliser les outils d'arcgis dans PyScripter, il faut référencer la librairie arcpy dans le menu Outils / Options / Options de l'ide, rubrique Code completion, à la ligne Special packages, il suffit de rajouter arcpy. Télécharger sur : 19 HB Programmation d ArcGIS Support de cours 10

11 2. Bases du langage Python HB Programmation d ArcGIS Support de cours Sommaire Concepts de base du langage Python : Variables et typage de données Commentaires Type chaîne Types numériques et opérateurs Structures de contrôle (tests conditionnels, boucles) Procédures, fonctions et modules Gestion d erreurs Types séquence (chaînes, listes, tuples) et dictionnaires Types date Fichiers texte 22 HB Programmation d ArcGIS Support de cours 11

12 Variables Une variable est créée et initialisée dans un type donné dans un même temps : Pas de déclaration préalable. Pas de type à déclarer explicitement (typage dynamique). Affectation avec le signe égale. Règles d utilisation : L initiale doit être une lettre ou "_". La longueur du nom n est pas limitée, mais ne doit pas contenir d espace ou de caractères spéciaux. Les noms sont sensibles à la casse : toto, Toto et TOTO sont 3 variables différentes. Une variable doit être initialisée avant d être utilisée. Il est recommandé de donner des noms explicites, de grouper des mots et de capitaliser les initiales à l intérieur du nom, ex. bufferdistance (les majuscules initiales sont réservées aux noms de classes). Ne pas utiliser les mots réservés du langage : 23 HB Programmation d ArcGIS Support de cours Affichage de la valeur d une variable : En entrant son nom au prompt. En utilisant la commande print permet d'afficher plusieurs valeurs, variables, en les séparant par des virgules. sépare les différents éléments affichés par des espaces. Affectation multiple : Affectation parallèle : Noter les différences d'affichage entre IDLE (exemples du haut) et fenêtre Python d'arcgis (exemples du bas). Afficher le type d une variable : fonction type() Détruire une variable : del 24 HB Programmation d ArcGIS Support de cours 12

13 Commentaires Les commentaires du programme sont introduits par le signe : # Ils peuvent figurer en début de ligne ou non. Fondamentaux pour expliquer le rôle et le fonctionnement d'un programme : - Description des variables, paramètres - Séparation des différentes parties d'un programme. pour l'utilisateur comme pour le programmeur. "Pseudo-commentaires" Information sur le codage des caractères utilisés dans un fichier de code source. À préciser en première ligne du fichier source (code par défaut : ASCII). # -*- coding: cp1252 -*- Page de code 1252 (Windows), langues d'europe occidentale. # -*- coding: utf_8 -*- Utilisation des caractères Unicode : é = Ã, à = Ã, etc. Liste des codecs (encodeurs-décodeurs) de texte : 25 HB Programmation d ArcGIS Support de cours Type string (chaîne de caractères) Suite quelconque de caractères délimités par des apostrophes ou des guillemets. Les guillemets peuvent délimiter une chaîne contenant des apostrophes et vice-versa. Opérateur + permet de concaténer des chaînes La fonction str() permet de transformer une expression numérique en chaîne. Le caractère \ ajoute des possibilités complémentaires : En fin de ligne, permet d'écrire une commande sur plusieurs lignes \n insère un saut de ligne dans une chaîne de caractères \' permet d'insérer une apostrophe dans une chaine entourée d'apostrophes. Le préfixe r (pour raw string) devant une chaîne indique que le caractère \ doit être traité comme un caractère standard. Le préfixe u spécifie une chaîne Unicode. 26 HB Programmation d ArcGIS Support de cours 13

14 Ou bien n'importe quoi entouré de triples """ ou ''' Composition d expressions et formatage de texte : Utilisation de paramètres de substitution en précisant ou non le nombre de caractères représentés : %s (chaîne quelconque), %2d (nombre sur au moins deux caractères), %5.2f (nombre sur 5 caractères minimum dont 2 décimales) insérés dans une chaîne et passés en arguments après le signe % : 27 HB Programmation d ArcGIS Support de cours Types numériques et opérateurs mathématiques Types entier (int), entier long (long), réel (float) et nombre complexe (complex). Conversions avec les fonctions prédéfinies int(), long(), float(), complex() Opérations arithmétiques de base : +, -, *, / La division d'entiers est entière (Python < 3). Type float si le nombre contient un point ou exposant, Opérateurs division entière //, modulo %, puissance ** Fonction eval(chaine) : évaluation d'un nombre ou d'une expression numérique Priorité des opérations dans une instruction : parenthèses, exposants, multiplication et division, addition et soustraction Opérations-affectations (à éviter) : +=, -=, *=, /= 28 HB Programmation d ArcGIS Support de cours 14

15 Fonctions mathématiques Les plus courantes sont dans un module externe de Python appelé math. Pour les utiliser il faut utiliser le commande import (ce qui donne accès aux fonctions du module) : Appel de fonction avec préfixe math. Le nom de la fonction est importé : utilisation directe. Quelques autres fonctions de math : math.pi, math.e renvoient les constantes pi et e trunc(x) : partie entière floor(x), ceil(x) : entier inférieur, entier supérieur degrees(x), radians(x) : conversions log(x), exp(x) : logarithme, exponentielle sin(x), cos(x), tan(x), atan(x), sinh(x), etc. fonctions trigonométriques. Le point après le nom du module permet d'utiliser les fonctions disponibles. Dans IDLE, Ctrl-Espace affiche la liste. Dans la fenêtre Python d'arcgis, les fonctions s'affichent automatiquement. L'interpréteur reconnaît les modules et permet l'autocomplétion du nom. Fonctions intégrées : abs(x), valeur absolue ; round(x, n), arrondi ; pow(x,y), puissance, etc. 29 HB Programmation d ArcGIS Support de cours Interaction avec l'utilisateur Demander à l'utilisateur d'introduire une valeur d'entrée d'un programme. Fonctions prédéfinies input() et raw_input() Les parenthèses peuvent contenir un message explicatif : prenom = raw_input(u"entrez votre prénom : ") print "Bonjour ", prenom Remarquez l'aide quand le nom de la fonction est reconnu par l'interpréteur. raw_input() renvoie toujours une chaîne de caractères. Les nombres peuvent être ensuite convertis avec int() et float(). input() renvoie une valeur correspondant à ce que l'utilisateur a entré (les chaînes de caractères doivent être entourées de guillemets). 30 HB Programmation d ArcGIS Support de cours 15

16 Instructions conditionnelles Si sinon ou alors if x > 0 : print x, " est positif" Remarquer l'indentation automatique après avoir validé la première ligne se terminant par deux points (:). L'absence d'indentation causerait une erreur. Indentation standard de 4 caractères. Délimitation claire des blocs de commandes = programme lisible. if x > 0 : print x, " est positif" else: print x, " est négatif ou nul" if x > 0 : print x, " est positif" elif x < 0 : print x, " est négatif" else: print x, " est nul" Un bloc comprend 0 ou 1 else ; 0, 1 ou plusieurs elif (else if) 31 HB Programmation d ArcGIS Support de cours Opérateurs de comparaison x == y # x est égal à y x!= y # x est différent de y x <> y # idem x > y # x est supérieur à y x >= y # x est supérieur ou égal à y x < y # x est inférieur à y x <= y # x est inférieur ou égal à y x is y # x est le même objet que y x is not y # x est un objet différent de y Booléens : True, False Majuscule obligatoire. Tout nombre non nul, structure (chaînes, listes, ensembles, etc.) non vide est évaluée à True. Le chiffre 0, toute structure vide est évaluée à False. Les opérateurs peuvent être enchaînés : Inutile de préciser : if x == True: Opérateurs logiques : and, or, not x and y # ET logique x or y # OU logique not x # évalué à la valeur opposée à x Absence de valeur : None Majuscule obligatoire. Valeur différente de 'vide' (False) Test d'une variable avec is / is not Ex: paramètre facultatif d'une fonction. 32 HB Programmation d ArcGIS Support de cours 16

17 Instructions composées En-tête : Instruction if, elif, else, while, def suivie d'un deux points en-tête : bloc indenté en dehors des indentations, les espaces sont non significatifs Le premier bloc ne peut pas être indenté >>> print "Hello" ( erreur) Indentations standard : multiples de 4 Même bloc = même indentation if embranchement == "Vertébrés": if classe == "Mammifères": if ordre == "Carnivores": if famille == "Canidés": print "C'est peut-être un chien" 33 HB Programmation d ArcGIS Support de cours Boucle While Répétition d un bloc d instructions si et tant qu une condition est remplie. La variable compteur doit être initialisée. i = 0 while i < 5 : i = i + 1 print i i = 0 while i < 5 : i = i + 1 print i i = 0 while i < 5 : i = i + 1 print i 1 résultat affiché 5 résultats affichés Erreur! Si la condition initiale n'est pas remplie, le bloc est ignoré. Si le bloc de données ne rend pas fausse la condition initiale : boucle infinie. i = 0 while i < 5 : print "il fait beau" Pour sortir d'une boucle infinie : Ctrl-F6 dans l"éditeur IDLE Ctrl-F2 dans PyScripter Echap dans la fenêtre Python d'arcgis. L'instruction break permet de sortir de la boucle. 34 HB Programmation d ArcGIS Support de cours 17

18 Boucle For Répétition d un bloc d instructions un nombre défini de fois. Syntaxe : for élément in liste : élément prend successivement pour valeur chaque item de la liste. La fonction range([début,] fin [, pas]) renvoie une liste de valeurs numériques (par défaut, début à 0 et incrémentation de 1) : L'instruction break permet de sortir prématurément du bloc de commandes. 35 HB Programmation d ArcGIS Support de cours Fonctions Fonctions intégrées (built-in functions) Plusieurs ont déjà été rencontrées. Liste complète : Fonctions importées de modules ou de packages (collections de modules) fournis avec Python ou par d'autres sources. Un module est un fichier contenant un ensemble de définitions de fonctions, propriétés et classes. dir(module) liste les fonctions d'un module. help(module) en fournit une aide détaillée. import math # utilisation des fonctions avec préfixe math. from math import sin # utilisation sans préfixe de sin() from math import * # importation de tous les noms from math import sqrt as racinecarree # redéfinition du nom Modules fournis : 36 HB Programmation d ArcGIS Support de cours 18

19 Module Fonctions codecs Codage/décodage de caractères csv Lecture/écriture de fichiers CSV datetime Gestion des dates et heures glob Recherche de fichiers avec caractères génériques (*,?) math Mathématiques os Liées au système d'exploitation pickle Sérialisation (transfert d'objets entre mémoire et fichier binaire). random Nombres aléatoires re Expressions régulières (recherche de texte correspondant à un modèle donné) string Formatage de chaînes de caractères sys Liées à l'interpréteur Python zipfile Lecture/écriture de fichiers compressés 37 HB Programmation d ArcGIS Support de cours Fonctions personnalisées Même mot réservé pour déclarer une procédure (sans renvoi de résultat) ou une fonction (avec renvoi de résultat) : def def nomfonction(liste de paramètres): bloc d'instructions def nomfonction(liste de paramètres): bloc d'instructions return résultat Mêmes règles de nommage que pour les variables. Paramètres séparés par des virgules. Paramètres facultatifs initialisés avec None. Parenthèses vides si pas de paramètres. Plusieurs return possibles. Valeur None si pas de return ou si return sans argument. Ligne de description de la fonction sous la déclaration d'en-tête, docstring utilisée par help() : 38 HB Programmation d ArcGIS Support de cours 19

20 Variables locales et globales Les variables utilisées dans une fonction sont locales sauf si elles sont déclarées global avant leur affectation. Comparer les valeurs des variables loc et glo dans les exemples 1 et 2. Modules personnalisés Créés par l'utilisateur et enregistrées dans un fichier *.py (qui devient un module) et transformé en *.pyc ou *.pyo (byte code), code "compilé" lors de l'importation. 39 HB Programmation d ArcGIS Support de cours Séquences (iterables) Types de données définis comme des séries de caractères ou d éléments, modifiables ou non : Chaînes de caractères (type string). Listes (collection modifiable d'éléments, type list). Tuples (liste non modifiable, type tuple). Quelques fonctions s'appliquant aux séquences : len(seq) : longueur d'une chaine de caractères, nombre d'éléments d'une liste, d'un tuple ou d'un dictionnaire. min(seq), max(seq) : plus petit ou plus grand élément d'un séquence. map(fonction, seq) : applique une fonction à chaque élément de la séquence. sorted(seq) : trie les éléments d'une séquence. Les séquences supportent aussi l'addition et la multiplication (opérateurs + et *) 40 HB Programmation d ArcGIS Support de cours 20

21 Chaînes de caractères Séquence ordonnée de caractères, accessibles un à un. Extraire des parties d'une chaîne : Premier caractère : indice 0 ch[i] # le caractère i+1 ch[:i] # du début jusqu'au i ème caractère ch[i:] # du caractère i+1 à la fin ch[i:j] # du caractère i+1 à j Fonctions chr(x) et ord(c), passage code ASCII / caractère. Mise en majuscules, minuscules upper(), lower(), title() méthodes appliquées à une chaîne Transformer une chaîne en liste à l'aide d'un séparateur, méthode split(sep) 41 HB Programmation d ArcGIS Support de cours Listes Collection ordonnée d'éléments (items) entre crochets, séparés par des virgules. Les éléments peuvent être de types différents. listefourretout = [14, "clés", 12.4] Une liste peut-être un item d'une autre liste. Ajout, modification et suppression d éléments (même indexation que les chaînes). Ajout d'un item (à la fin) Insertion d'un item après le premier Suppression des items 8 et 9, s'obtient aussi avec la commande del liste[7:9] 42 HB Programmation d ArcGIS Support de cours 21

22 Méthodes append(élément) ; count(élément), nombre d'occurrences de élément ; insert(rang, élément); pop(élément), retourne élément et le supprime de la liste ; remove(élément), supprime élément ; sort(), trie la liste. Opérateurs in et not in testent la présence d'un item dans une liste. Fonction range([début,] fin [, pas]) renvoie une liste d'entiers. Exemple d'utilisation d'une liste : ajout d'un répertoire à la liste des répertoires dans lesquels Python recherche des scripts. 43 HB Programmation d ArcGIS Support de cours Tuples Listes figées d'items (pas d'ajouts, suppressions, etc.) : intégrité maintenue dans le code. Accès aux items par indices comme pour les listes et chaînes de caractères. Eléments entre parenthèses (ou non), séparés par des virgules. tuplr = ("Hérault", "Gard", "Lozère", "Aude", "Pyrénées-Orientales") tupolev = 144, 154, 46, 95, 144 tupseul = ("Seul",) # un seul élément, il faut ajouter une virgule. Méthodes index(valeur), renvoie l'indice et count(valeur), renvoie le nombre d'occurrences d'un item donné. Fonction zip(liste de séquences) renvoie une liste de tuples, chaque tuple contenant le i ème élément de chaque séquence en entrée. La liste est de la longueur de la séquence le plus courte. 44 HB Programmation d ArcGIS Support de cours 22

23 Dictionnaires Collection non ordonnée de couples clé:valeur, séparés par des virgules et placé entre accolades. Les clés doivent être uniques. Différent d'une séquence : pas de concaténation, d'extraction suivant un indice, etc. Utile pour stocker un ensemble de données avec des ajouts et des suppressions et où l'ordre n'est pas important. Méthode get(clé) renvoie la valeur si la clé existe, sinon None ou une valeur spécifiée. 45 HB Programmation d ArcGIS Support de cours Opérateurs in et not in testent la présence d'une clé (et non d'une valeur) dans le dictionnaire. Fonction dict() permet de créer un dictionnaire à partir de listes de doublets : dict([[clé1,valeur1],[clé2,valeur2], ]) Méthodes items(), keys() et values() renvoient les listes de clé-valeur, clés, ou valeurs du dictionnaire sous forme de listes ; has_key(k) est vrai si k est existe ; clear() efface tous les items ; pop(k) efface la clé et retourne la valeur, etc. Exemple de comptage des lettres d'un texte : 46 HB Programmation d ArcGIS Support de cours 23

24 Travailler avec les fichiers Changer le répertoire courant : Ouverture : fonction open(), en lecture ("r"), écriture ("w") ou ajout ("a"). Méthodes pour lire : read(nbcar), si nbcar est omis, lit tout le fichier ; readline(), lit une ligne ; readlines(), transfère toutes les lignes dans une liste. Un fichier est lu séquentiellement, il n'est pas possible de "remonter". En fin de fichier, readline() renvoie une chaine vide. Une ligne vide dans le fichier contient en fait "\n" (caractère de terminaison de ligne) Méthode pour écrire : write(chaine) Pour faire un retour à la ligne, chaine doit se terminer par "\n" Fermeture : fonction close(). Le fichier n'est plus verrouillé par Python pour d'autres applications. 47 HB Programmation d ArcGIS Support de cours Gestion des erreurs (exceptions) Blocs d'instructions délimités par la séquence de mots-clés : try, except, else, finally. Permet une exécution "sous réserve" du code et de "sortir proprement" en cas d'erreur d'exécution du programme. Les blocs else et finally sont optionnels. Il peut y avoir plusieurs blocs except, chacun traitant un ou plusieurs types d'erreurs donnés (SyntaxError, SystemError, ZeroDivisionError, etc.) Liste des exceptions : 48 HB Programmation d ArcGIS Support de cours 24

25 Dates Les classes (date, time, datetime, timedelta ) gérant les dates et l'heure se trouvent dans le module datetime. Création d'un objet de type date avec la méthode date(année, mois, jour). Un objet date possède les propriétés year, month, day et une méthode weekday() qui renvoie un chiffre de 0 à 6 pour les jours de la semaines du lundi au dimanche. Date du jour : date.today() Date et heure actuelle : datetime.now(), objet datetime avec propriétés hour, minute, second, microsecond en plus des propriétés de date. Différence entre deux dates est un objet de type timedelta (qui possède des propriétés days, seconds, microseconds. La méthode strftime() crée une chaîne représentant une date-heure et la méthode inverse strptime() crée une date-heure à partir de chaînes de caractères. Elles possèdent de nombreuses directives : %A (nom du jour), %m (numéro du mois), %y (année sans le siècle), etc. Doc Python 49 HB Programmation d ArcGIS Support de cours Interface graphique : le module Tkinter Pas de boîte de dialogue standard : possible d'utiliser une librairie graphique telle que Tkinter (livrée avec Python). Manipulation de widgets (ou contrôles) : Entry() zone de saisie ; Button(), bouton de commande ; Label(), étiquettes, menus, listes déroulantes définis sur une fenêtre initialisée par fonction Tk() et affichée par mainloop(). Permet de répondre à des évènements utilisateur (clic souris, touche pressée). Méthodes : pack() minimise occupation du widget dans la fenêtre, bind(événement, réponse), définies sur les widgets. 50 HB Programmation d ArcGIS Support de cours 25

26 3. Programmation objet avec Python HB Programmation d ArcGIS Support de cours Sommaire Concepts de base : classes, instances, propriétés, méthodes Création de classes d'objets Encapsulation Héritage Polymorphisme Utilisation des objets 52 HB Programmation d ArcGIS Support de cours 26

27 Concepts de base Méthode de programmation se rapprochant du monde réel : composé d objets : une carte, une voiture... possédant des propriétés (ou champs, attributs) : une échelle, une couleur supportant des actions, appelées méthodes (procédures et fonctions) : zoomer, démarrer... pouvant répondre à des événements (clic, contact) les affectant. Les objets sont regroupés en Classes (Cartes, Voitures) possédant les mêmes propriétés, méthodes et événements. La syntaxe des instructions est de la forme : objet.méthode, objet.propriété Programmation : manipulation «d instances» (exemples) d éléments d une classe) d objets. D où les mots instancier, instanciable, instanciation. 53 HB Programmation d ArcGIS Support de cours En Python, toutes les variables identifient une instance d'une classe d'objet : variables numériques, séquences (chaines de caractères, listes, tuples), dictionnaires, etc. sont des objets. Méthode 'addition' 54 HB Programmation d ArcGIS Support de cours 27

28 Création de classes d'objets Instruction composée class Nom : Par convention, les noms de classes commencent par une majuscule. unobjet = nomclasse() Création d un nouvel objet (ou instance) de la classe nomclasse, qui sera manipulable via la variable unobjet avec unobjet.méthode ou unobjet.propriété Parenthèses obligatoires (autres langages utilisent le mot-clé New) Définition des attributs (propriétés) de l'instance par affectation. Remarque : les propriétés ne sont pas normalement définies de cette manière! 55 HB Programmation d ArcGIS Support de cours p2objet = p1objet Affectation de la référence de p1objet à p2objet : les 2 variables désignent le même objet en mémoire. On obtient ainsi 2 alias sur le même objet. Un objet peut être composé d'autres objets : Enchaînement des lectures de propriétés avec des "." 56 HB Programmation d ArcGIS Support de cours 28

29 Encapsulation Les définitions et initialisation des propriétés des instances, l'implémentation des méthodes de la classe, se font à l'intérieur de la définition de la classe. Empêche l'accès aux données par un autre moyen que les services proposés ce qui garantit l'intégrité des données contenues dans l'objet. Méthode init : constructeur, définit les attributs par défaut d'une nouvelle instance de classe (notée self par convention). Dans l'exemple ci-dessous : longueur et largeur peuvent être précisés ou omis (car initialisés) lors de l'instanciation de l'objet. La méthode centre() renvoie deux valeurs (tuple). Implémentation de la méthode centre() 57 HB Programmation d ArcGIS Support de cours Héritage L'héritage permet de transférer à une classe les caractéristiques d'une autre classe. La classe dont elle hérite est appelée classe mère (ou classe de base, classe antécédente). La classe elle-même est appelée classe fille (ou classe dérivée, descendante). Syntaxe class ClasseFille(ClasseMere) : trait1, trait2, etc. attributs de classe hérités (pouvant être redéfinis localement). Vertebre Oiseau Mammifere Carnivore Chien 58 HB Programmation d ArcGIS Support de cours 29

30 Polymorphisme Des classes différentes peuvent partager la même méthode. L implémentation des méthodes et propriétés se fait dans le bloc de classe, les objets peuvent donc répondre différemment. Une classe fille peut redéfinir (surcharger) une méthode héritée. ANIMAL OISEAU 59 HB Programmation d ArcGIS Support de cours Utilisation d'un objet 1. Assigner à une variable une instance de la classe désirée : - Instanciation (nouvel objet créé) avec le nom d'une classe. - Instanciation par une propriété ou méthode d un objet existant. - Objet existant déjà pointé par une autre variable. OISEAU 2. Appel de méthode, définition ou récupération d une valeur de propriété : 60 HB Programmation d ArcGIS Support de cours 30

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5

Introduction à l algorithmique et à la programmation 2013-2014. Cyril Nicaud Cyril.Nicaud@univ-mlv.fr. Cours 1 / 5 Introduction à l algorithmique et à la programmation IUT 1ère année 2013-2014 Cyril Nicaud Cyril.Nicaud@univ-mlv.fr Cours 1 / 5 Déroulement du cours Organisation : 5 séances de 2h de cours 10 séances de

Plus en détail

xkcd Le langage Python La GUI tkinter Christian Nguyen Département d informatique Université de Toulon et du Var 2012-2013

xkcd Le langage Python La GUI tkinter Christian Nguyen Département d informatique Université de Toulon et du Var 2012-2013 La GUI tkinter Département d informatique Université de Toulon et du Var 2012-2013 Présentation Python est né en 1990, son concepteur est De Guido Van Rossum(Pays Bas). Il présente les caractéristiques

Plus en détail

C.P.G.E - Meknès Langage Python 3 Haouati Abdelali

C.P.G.E - Meknès Langage Python 3 Haouati Abdelali 3. Langage Python 3 2 a. Introduction Présentation du langage Python : Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans l imposer) une approche modulaire et orientée objet

Plus en détail

S. Laporte C# mode console DAIGL TS1

S. Laporte C# mode console DAIGL TS1 Bases du langage C# I. C# en mode console (mode texte) Avantages par rapport au mode graphique (Application Windows): - C'est un mode plus proche de l'approche algorithmique (pas de notions de composants,

Plus en détail

Support de TD ArcGIS 10.1. Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT 2014-2015. 3 e année ingénieur

Support de TD ArcGIS 10.1. Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT 2014-2015. 3 e année ingénieur JEAN-MARC GILLIOT 2014-2015 Durée 1,5 heures Introduction à l automatisation et au développement avec ArcGIS 10.1 3 e année ingénieur Support de TD ArcGIS 10.1 Grande école européenne d'ingénieurs et de

Plus en détail

Table des matières. 4. INSTRUCTIONS RÉPÉTITIVES... 25 Réaffectation 25 Répétitions en boucle L instruction while 26 Commentaires 26 Remarques 27

Table des matières. 4. INSTRUCTIONS RÉPÉTITIVES... 25 Réaffectation 25 Répétitions en boucle L instruction while 26 Commentaires 26 Remarques 27 Gérard Swinnen Apprendre à programmer avec Python 3 Avec 60 pages d exercices corrigés! Objet Multithreading Bases de données Événements Programmation web Programmation réseau Unicode Impression PDF Python

Plus en détail

II. EXCEL/QUERY ET SQL

II. EXCEL/QUERY ET SQL I. AU TRAVAIL, SQL! 1. Qu est-ce que SQL?... 19 2. SQL est un indépendant... 19 3. Comment est structuré le SQL?... 20 4. Base, table et champ... 21 5. Quelle est la syntaxe générale des instructions SQL?...

Plus en détail

VBA Excel 2010 Programmer sous Excel : Macros et Langage VBA

VBA Excel 2010 Programmer sous Excel : Macros et Langage VBA Editions ENI VBA Excel 2010 Programmer sous Excel : Macros et Langage VBA Collection Ressources Informatiques Table des matières Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse

Plus en détail

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

VBA Access 2013 Programmer sous Access

VBA Access 2013 Programmer sous Access Avant-propos 1. Introduction 15 2. Objectifs du livre 15 Généralités 1. Rappels 19 2. Principes fondamentaux de VBA 20 3. Passage des macros à VBA 21 3.1 Conversion de macros dans un formulaire ou un état

Plus en détail

Informatique TP1 : Découverte de Python CPP 1A

Informatique TP1 : Découverte de Python CPP 1A Informatique TP1 : Découverte de Python CPP 1A Romain Casati, Wafa Johal, Frederic Devernay, Matthieu Moy Avril - juin 2014 1 Découverte de l IDE : IDLE IDLE est un environnement de développement (Integrated

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes

Programmation en Python - Cours 2 : Premiers programmes Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-onventions Initiation à la programmation en Python Une commande Python sera écrite en caractère gras. Exemples : print("bonjour") max=input("nombre maximum autorisé :") Le résultat de l'exécution d'un

Plus en détail

Séminaire Partenaires Esri France 7-8 juin 2011 - Paris Automatiser ArcGIS avec Python

Séminaire Partenaires Esri France 7-8 juin 2011 - Paris Automatiser ArcGIS avec Python Séminaire Partenaires Esri France 7-8 juin 2011 - Paris Automatiser ArcGIS avec Python Gaëtan LAVENU Pourquoi Python dans ArcGIS? Python a été conçu pour être facile à lire et à écrire Simple à maintenir

Plus en détail

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5

SHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (2ième édition)

Apprendre à développer un site web avec PHP et MySQL Exercices pratiques et corrigés (2ième édition) Introduction 1. Objectif de l'ouvrage 13 2. Fonctionnement d un site web 13 Installation 1. Introduction 17 2. Installation d'easyphp 13.1 18 Les bases du langage PHP 1. Les balises 23 1.1 Syntaxe de base

Plus en détail

Macros et langage VBA Apprendre à programmer sous Excel (3ième édition)

Macros et langage VBA Apprendre à programmer sous Excel (3ième édition) Introduction A. Introduction 15 B. À qui s'adresse ce livre? 15 C. Qu est-ce qu une macro? 15 D. Quel intérêt de faire des macros? 16 E. Contenu de ce livre 16 L'éditeur de Visual Basic A. Introduction

Plus en détail

18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy)

18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy) Présentation cours 18 h CM (F. Maurel) + 16 h TD/TP (F. Maurel / T. Roy) 5/6 h Python 2,5/2 h Introduction à l'ihm (démarche participative centrée utilisateur) + Mise en place des groupes 2,5/2 h : Méthodes

Plus en détail

Parcours FOAD Formation ACCESS 2010

Parcours FOAD Formation ACCESS 2010 Parcours FOAD Formation ACCESS 2010 PLATE-FORME E-LEARNING DELTA ANNEE SCOLAIRE 2013/2014 Pôle national de compétences FOAD Formation Ouverte et A Distance https://foad.orion.education.fr Livret de formation

Plus en détail

Haute École de Gestion 05/10/2007. au cours Programmation en VBA Excel. Faisons connaissance. Etudiants se présentent

Haute École de Gestion 05/10/2007. au cours Programmation en VBA Excel. Faisons connaissance. Etudiants se présentent Bienvenue au cours en Excel Faisons connaissance Etudiants se présentent Nom, Prénom Avez-vous déjà fait des macros Excel? Avec-vous déjà programmé avec Excel? Avez-vous déjà programmé avec d'autres langages

Plus en détail

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis

Java. Java. Le livrede. Avec 80 exercices corrigés. Avec 80 exercices corrigés. Le livre. Anne Tasso. 5 e édition. Un best-seller qui a déjà conquis Anne Tasso Un best-seller qui a déjà conquis des milliers d'étudiants! Java Le livre Java Le livrede de premier premier langage langage Avec 80 exercices corrigés Avec 80 exercices corrigés 5 e édition

Plus en détail

Python 3 Mémo. Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print.

Python 3 Mémo. Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print. Langage Python 3 Mémo I Entrées, Sorties et Variables 1 ) Sorties Pour permettre au programme en cours d exécution d afficher un texte ou un nombre on utilise la commande print. Exemples : print("bonjour!")

Plus en détail

FORMATION VB.NET Visual Studio 2008

FORMATION VB.NET Visual Studio 2008 FORMATION VB.NET Visual Studio 2008 Livret 1 Introduction à Visuàl Studio Thierry TILLIER http://www.coursdinfo.fr Ce support de cours est réservé à un usage personnel. Toute utilisation et diffusion dans

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python Initiation à la programmation en Python Damien Vergnaud École Normale Supérieure 4 mars 2009 Damien Vergnaud (École Normale Supérieure) Initiation à la programmation en Python 4 mars 2009 1 / 25 Table

Plus en détail

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées PRODIGE V3 Manuel utilisateurs Consultation des métadonnées Pour plus d'information sur le dispositif : à remplir par chaque site éventuellement 2 PRODIGE V3 : Consultation des métadonnées SOMMAIRE 1.

Plus en détail

Informatique SV L2 TP 1

Informatique SV L2 TP 1 Informatique SV L2 TP 1 1 Prise en main de Python 1.1 Démarrer l'interpréteur Python Pour exécuter du code Python, il faut ouvrir l'interpréteur Python. Pour cela : Ouvrez la console : Menu UCP, Console

Plus en détail

Informatique. Programmation en Python.

Informatique. Programmation en Python. BCPST 1 B 13 septembre 2015 Informatique. Programmation en Python. Ce document est un support de cours, il vous permet d avoir sa structure et ses éléments les plus importants. Au cours des séances en

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel)

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel) Activer l onglet Développeur (Excel) Programmation VBA Michel Reid Cliquez sur le bouton Office (coin supérieur gauche) Cliquez sur le bouton Options Excel Dans la section Standard, cochez la case Afficher

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

Plus en détail

Introduction à l informatique, à Python, et représentation des nombres en machine

Introduction à l informatique, à Python, et représentation des nombres en machine Introduction à l informatique, à Python, et représentation des nombres en machine Table des matières Qu est-ce-que l informatique? Qu est-ce-qu un ordinateur? 2 Principaux composants...............................................

Plus en détail

Didacticiel d'exécution d'outils avec ModelBuilder

Didacticiel d'exécution d'outils avec ModelBuilder Didacticiel d'exécution d'outils avec ModelBuilder Copyright 1995-2012 Esri All rights reserved. Table of Contents Didacticiel : exécution d'outils dans ModelBuilder...................... 0 Copyright 1995-2012

Plus en détail

Programmer avec Xcas : version 0.8.6 et 0.9

Programmer avec Xcas : version 0.8.6 et 0.9 Programmer avec Xcas : version 0.8.6 et 0.9 I. L environnement de travail de Xcas Xcas permet d écrire des programmes, comme n importe quel langage de programmation. C est un langage fonctionnel. L argument

Plus en détail

Eléments de syntaxe du langage Java

Eléments de syntaxe du langage Java c jan. 2014, v3.0 Java Eléments de syntaxe du langage Java Sébastien Jean Le but de ce document est de présenter es éléments de syntaxe du langage Java : les types primitifs, les opérateurs arithmétiques

Plus en détail

FORMATION GEDIWEB SUPPORT

FORMATION GEDIWEB SUPPORT FORMATION GEDIWEB SUPPORT GEDIWEB : LES EDITIONS 2010 AVERTISSEMENT GEDIDOC et GEDIWEB sont des marques déposées MEDIAL : produits commercialisés sous licence d'utilisation. Ce document est la propriété

Plus en détail

4. Créer des compteurs, des curseurs ou des bandes déroulantes : a) Création des objets. b) Affectation à une cellule et réglage du pas.

4. Créer des compteurs, des curseurs ou des bandes déroulantes : a) Création des objets. b) Affectation à une cellule et réglage du pas. Logiciel Excel version Office 2007. Voici une liste non exhaustive de fonctions de ce logiciel en relation avec le stage. Au sommaire : 1. Créer des boutons de raccourci dans une barre d outils: a) Sélection

Plus en détail

Algorithmie ISI301 TP 1 : Python et premiers algorithmes

Algorithmie ISI301 TP 1 : Python et premiers algorithmes Algorithmie ISI301 TP 1 : Python et premiers algorithmes 1 Python : apprentissage Pour avoir une vision plus large des différentes possibilités du langage Python, nous ne pouvons que vous conseiller d

Plus en détail

Windows Forms. 1 Introduction. 1.1 Objectifs. 1.2 Le C# 1.3 Visual Studio. C# tp 0 Octobre 2013. Epita

Windows Forms. 1 Introduction. 1.1 Objectifs. 1.2 Le C# 1.3 Visual Studio. C# tp 0 Octobre 2013. Epita Windows Forms 1 Introduction 1.1 Objectifs Durant ce TP, vous allez découvrir un nouveau langage, le C#. Vous serez confrontés à une nouvelle façon de coder, avec un nouveau langage, sous un nouvel environnement.

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume Studio HERITIER Emmanuelle PERSYN Elodie SCHMUTZ Amandine SCHWEITZER Guillaume Cours R Présentation projet 10/10/2013 Introduction RStudio est une interface créé par JJ Allaire Elle est sortie le 11 Février

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2

Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html. R.R. Université Lyon 2 Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_python.html 1 Généralités sur la programmation ALGORITHMIE - PROGRAMMATION 2 Algorithmie vs. Programmation Algorithmie Programme

Plus en détail

TP : commande awk. D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html

TP : commande awk. D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html TP : commande awk D'après le cours en ligne de Isabelle Vollant http://www.shellunix.com/awk.html Nous reprenons dans ce TP une grande partie du cours de Isabelle Vollant en simplifiant quelques informations.

Plus en détail

Formation Python. Sandra Dèrozier & Franck Samson 29 Mars 2013

Formation Python. Sandra Dèrozier & Franck Samson 29 Mars 2013 Formation Python Sandra Dèrozier & Franck Samson 29 Mars 2013 Programme Présentation de Python Présentation d Eclipse Caractéristiques d un programme Python Variables Python Structures de contrôle et Boucles

Plus en détail

Les bases du langage Python

Les bases du langage Python Décembre 2006 Plan Les bases de Python 1 Les bases de Python Introduction La syntaxe de Python Les types de Python 2 Les fonctions Les classes Les exceptions 3 4 5 Pilot Systems Les bases de Python Introduction

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers

Programmation en Python - Cours 2 : Premiers programmes. MPSI - Lycée Thiers Programmation en Python - Cours 2 : Premiers programmes Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Utilisation en mode interactif Ecriture d un programme

Plus en détail

Conseil, Etudes et Edition de logiciels NORMES & CONVENTIONS DE DEVELOPPEMENT JAVA ET SQL

Conseil, Etudes et Edition de logiciels NORMES & CONVENTIONS DE DEVELOPPEMENT JAVA ET SQL Conseil, Etudes et Edition de logiciels NORMES & CONVENTIONS DE DEVELOPPEMENT JAVA ET SQL Table des matières Système d'exploitation... 3 Environnement de développement intégré... 3 Le workspace... 3 Le

Plus en détail

Logiciel Statistique : SPSS

Logiciel Statistique : SPSS Faculté des Sciences Économiques et de Gestion de Tunis Logiciel Statistique : SPSS Notes du cours pour les étudiants du Master Recherche en Marketing, Management & Finance Dr. Jalila ATTAFI 2011-2012

Plus en détail

TD3 - Facturation avec archivage automatisé

TD3 - Facturation avec archivage automatisé TD3 - Facturation avec archivage automatisé Objectifs Insérer les formules nécessaires aux calculs d une facture. Créer une macro- commande avec l enregistreur de macros et l affecter à un bouton. Utiliser

Plus en détail

ALICE Prise en main du logiciel

ALICE Prise en main du logiciel Alice : Manuel de prise en main 1/9 Introduction Alice est un programme qui permet de construire des mondes virtuels composés d objets en 3 dimensions. Ces objets respectent la logique de la programmation

Plus en détail

TABLEURS Exemples de produits

TABLEURS Exemples de produits TABLEURS Exemples de produits Excel de MicroSoft, 1-2-3 de Lotus, SuperCalc de Computer Associates, VisiCalc de VisiCorp, Multiplan de MicroSoft, Quattro de Borland, ViewSheet de Acorn, Improve de Lotus,

Plus en détail

La géodatabase pour les nuls

La géodatabase pour les nuls La géodatabase pour les nuls Salle de classe SIG 2011 2 Exercice 1 : Construire une Géodatabase et intégrer des données Temps estimé: 40 minutes Dans cet exercice, vous allez construire une Géodatabase

Plus en détail

Programmation en VBA

Programmation en VBA Programmation en VBA Présentation de Visual Basic Visual Basic : Basic : dérivé du langage Basic (Biginner s All purpose Symbolic Instruction Code) des années 60 Visual : dessin et aperçu de l interface

Plus en détail

Introduction à l Interaction Homme-Machine Tutoriel Visual Studio / Visual Basic

Introduction à l Interaction Homme-Machine Tutoriel Visual Studio / Visual Basic IUT d Orsay Première Année Introduction à l Interaction Homme-Machine Février 2014 Introduction à l Interaction Homme-Machine Tutoriel Visual Studio / Visual Basic Cette introduction à Visual Studio est

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Epidémiologie, l urne de Pólya, partie II

Epidémiologie, l urne de Pólya, partie II Epidémiologie, l urne de Pólya, partie II Se mettre par groupe de deux. Traiter la fiche dans l ordre. Un compte de rendu de TP devra être rendu avec les réponses écrites aux questions, les recherches

Plus en détail

ENSI. Visual C++ Initiation

ENSI. Visual C++ Initiation ENSI Visual C++ Initiation Tables des matières 1. LES MFC (MICROSOFT FOUNDATION CLASSES)...3 1.1 DÉFINITION... 3 1.2 L ESPACE DE TRAVAIL... 3 2. CRÉER UN NOUVEAU PROJET...5 2.1 ETAPE 1 : CHOISIR LE TYPE

Plus en détail

Informatique Pour Tous

Informatique Pour Tous Informatique Pour Tous Informatique Pour Tous I-Petite introduction Qu est ce que c est Python? Python est un langage de programmation multi-paradigme. Historique : Développé en 1989 par Guido van Rossum.

Plus en détail

Chiffrement en Python

Chiffrement en Python Emmanuel MORAND (http://www.emmanuelmorand.net) 11 janvier 2008 Ce document a pour objectif de permettre la découverte du langage de programmation Python et de sa très grande efficacité. Les différentes

Plus en détail

1 Valeur d une expression

1 Valeur d une expression PCSI Informatique: Cours2 1 VALEUR D UNE EXPRESSION Expressions et variables en informatique 1 Valeur d une expression Expression : suite de caractères qui a un sens pour la machine Valeur d une expression

Plus en détail

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12 Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures

Plus en détail

Gérer les représentations dans ArcGIS. Copyright 2007 ESRI France Tous droits réservés

Gérer les représentations dans ArcGIS. Copyright 2007 ESRI France Tous droits réservés Gérer les représentations dans ArcGIS 10-2 Résumé du chapitre Qu est ce qu une représentation? Que pouvez vous faire avec les représentations? Intérêt des représentations Pré requis Eléments d une représentation

Plus en détail

OI40: bases de données, TP 2

OI40: bases de données, TP 2 OI40: bases de données, TP 2 Frédéric Lassabe October 26, 2010 Ce TP requiert d avoir bien compris le TP précédent. 1 Sujet Lors de ce TP, il sera question d améliorer la base de données du TP précédent.

Plus en détail

Cadastre du bruit SIT-JURA. Connecteur Arcview9.x - MSAccess. Mode d emploi. Appel formulaire. Page 1 sur 15

Cadastre du bruit SIT-JURA. Connecteur Arcview9.x - MSAccess. Mode d emploi. Appel formulaire. Page 1 sur 15 Cadastre du bruit SIT-JURA Connecteur Arcview9.x - MSAccess Mode d emploi Appel formulaire Page 1 sur 15 Table des matières 1. INSTALLATION 3 2. UTILISATION 3 2.1. Création de nouvelles géodatabases 7

Plus en détail

Python langage de programmation

Python langage de programmation Initiation à la programmation avec Python langage de programmation Valérie Bellynck (2009), d après un diaporama d Alain Bozzi (2008), lui-même venant de celui de Bob Cordeau (2008) 1 Langage de Programmation

Plus en détail

Unité de formation 1 : Structurer une application. Durée : 3 semaines

Unité de formation 1 : Structurer une application. Durée : 3 semaines PROGRAMME «DEVELOPPEUR LOGICIEL» Titre professionnel : «Développeur Logiciel» Inscrit au RNCP de niveau III (Bac+2) (JO du 23 Octobre 2007) (32 semaines) Unité de formation 1 : Structurer une application

Plus en détail

TP Compilation Analyse lexicale

TP Compilation Analyse lexicale TP Compilation Analyse lexicale Eric Ramat ramat@lisic.univ-littoral.fr 9 mai 2014 Durée : 6 heures 1 Introduction Le but de cet TP est de vous donner les bases nécessaires afin de pouvoir écrire votre

Plus en détail

Client SQL Server version 3

Client SQL Server version 3 Client SQL Server version 3 Présentation du programme Par Jean-Pierre LEON Mise à jour du 10/06/2014 Page 2 sur 21 Présentation du logiciel Ouvrir, analyser, consulter, modifier une base de données au

Plus en détail

Programme de formation

Programme de formation INSCRIVEZ VOUS Formations sélectionnées et financées par le FAFIEC Programme de formation mardi 16 septembre 2014 Les Métiers du Test Module 5.2 - Automatisation des tests fonctionnels : HP Unified Functional

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

TRAVAUX PRATIQUES DE TRAITEMENT D'IMAGES

TRAVAUX PRATIQUES DE TRAITEMENT D'IMAGES TRAVAUX PRATIQUES DE TRAITEMENT D'IMAGES II - PRESENTATION DU LOGICIEL CLASSMAN32 1) Fonctionnalités de base CLASSMAN est un logiciel de visualisation et de traitement d'image qui s'exécute sous l'environnement

Plus en détail

Sommaire. Partie A VBA pour WORD et EXCEL 21. 1 Découvrir l éditeur VBA 23

Sommaire. Partie A VBA pour WORD et EXCEL 21. 1 Découvrir l éditeur VBA 23 Partie A VBA pour WORD et EXCEL 21 1 Découvrir l éditeur VBA 23 1.1 Enregistrer une macro... 25 Enregistrer une macro Excel... 26 Enregistrer une macro Word... 35 1.2 Accéder à l éditeur VBA... 40 Examiner

Plus en détail

Support de cours ARGIS 9.xx

Support de cours ARGIS 9.xx Support de cours ARGIS 9.xx Emmanuel Bonnet Université de Lille1 1 Découverte du logiciel et appropriation du vocabulaire ESRI Quelques mots sur le logiciel et ses versions antérieures! " #!!!!!! $%&!'!!

Plus en détail

Programmation sous Python

Programmation sous Python Erwan Biland Lycée Chateaubriand - BCPST 1C Année scolaire 2014-2015 Objects du Utilisation de la console (shell ) Python calculatrice Fichier machin.py Manipulation des variables Création/affectation,

Plus en détail

SAP BusinessObjects Web Intelligence (WebI) BI 4

SAP BusinessObjects Web Intelligence (WebI) BI 4 Présentation de la Business Intelligence 1. Outils de Business Intelligence 15 2. Historique des logiciels décisionnels 16 3. La suite de logiciels SAP BusinessObjects Business Intelligence Platform 18

Plus en détail

Les types utilisateurs (VBA) Corrigé

Les types utilisateurs (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 2 avril mai 2013 Corrigé Résumé Ce document décrit comment traduire en VBA les types utilisateur du langage algorithmique. Table des matières

Plus en détail

Le programme utilise la librairie FOX Toolkit (http://www.fox-toolkit.org) pour son interface

Le programme utilise la librairie FOX Toolkit (http://www.fox-toolkit.org) pour son interface 1 EditHexa permet l'affichage d'un fichier en mode hexadécimal, il est en outre possible d'y apporter des modifications. Dans cette nouvelle version du programme, l affichage de plusieurs documents en

Plus en détail

Programmation Objet - Cours II

Programmation Objet - Cours II Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à

Plus en détail

Réaliser un atlas cartographique

Réaliser un atlas cartographique Réaliser un atlas cartographique Salle de classe SIG 2011 Exercice : Création d un atlas cartographique Temps estimé: 30 minutes La mise en page des cartes est un élément essentiel des SIG, la version

Plus en détail

IMPLANTATION D UNE BASE DE DONNEES SOUS MS-ACCESS 97

IMPLANTATION D UNE BASE DE DONNEES SOUS MS-ACCESS 97 Stage STT050 - Novembre 2000 Page 1 IMPLANTATION D UNE BASE DE DONNEES SOUS MS-ACCESS 97 GENERALITES SUR MS-ACCESS Fonctionnalités de MS-ACCESS Access 97 est un produit Microsoft de type SGBDR (Système

Plus en détail

ArcGIS Manuel de formation

ArcGIS Manuel de formation ArcGIS Manuel de formation Présentation générale de la gamme ArcGIS V1.1 avril 2004 Sommaire Introduction Le système ArcGIS Les données utilisables ArcGIS desktop Les modules complémentaires Introduction

Plus en détail

Nous allons détailler dans cette documentation les fonctionnalités pour créer un objet colonne.

Nous allons détailler dans cette documentation les fonctionnalités pour créer un objet colonne. Généralités Dans le générateur d états des logiciels Ciel pour Macintosh vous avez la possibilité de créer différents types d éléments (texte, rubrique, liste, graphiques, tableau, etc). Nous allons détailler

Plus en détail

Chapitre 4 La base de données

Chapitre 4 La base de données Chapitre 4 La base de données La Base de données INTRODUCTION 4 La Base de données INTRODUCTION Vectorworks permet de lier les objets du dessin à des formats de base de données (BDD), c'est-à-dire d'associer

Plus en détail

TD : Petits exercices pour la reprise

TD : Petits exercices pour la reprise TD : Petits exercices pour la reprise 1) Environnement de travail a) Qu est-ce qu un IDE? Lorsqu on fait de la programmation, il est agréable d avoir à sa disposition différents outils qui permettent de

Plus en détail

Ch. 1 : Bases de programmation en Visual Basic

Ch. 1 : Bases de programmation en Visual Basic Ch. 1 : Bases de programmation en Visual Basic 1 1 Variables 1.1 Définition Les variables permettent de stocker en mémoire des données. Elles sont représentées par des lettres ou des groupements de lettres

Plus en détail

Initiation à L Informatique. - Cours sur Windows - La notion du SE

Initiation à L Informatique. - Cours sur Windows - La notion du SE Initiation à L Informatique - Cours sur Windows - 1 Le système d'exploitation est un ensemble d'outils logiciels permettant à l'ordinateur de gérer : - la communication entre les différents composants

Plus en détail

Programmation en VBA

Programmation en VBA Programmation en VBA Présentation de Visual Basic Visual Basic : Basic : dérivé du langage Basic (Biginner s All purpose Symbolic Instruction Code) des années 60 Visual : dessin et aperçu de l interface

Plus en détail

LE TRAITEMENT DE TEXTE

LE TRAITEMENT DE TEXTE LE TRAITEMENT DE TEXTE A partir de la version 5 de spaiectacle, le traitement de texte est totalement intégré à l application. Au-delà de la simplification quant à la manipulation de ce module, c est également

Plus en détail

Algorithmique - Techniques fondamentales de programmation Exemples en Python (nombreux exercices corrigés) - BTS, DUT informatique

Algorithmique - Techniques fondamentales de programmation Exemples en Python (nombreux exercices corrigés) - BTS, DUT informatique Introduction à l'algorithmique 1. Les fondements de l informatique 13 1.1 Architecture de Von Neumann 13 1.2 La machine de Turing 17 1.3 Représentation interne des instructions et des données 19 1.3.1

Plus en détail

MySQL 5 (versions 5.1 à 5.6) Guide de référence du développeur (Nouvelle édition)

MySQL 5 (versions 5.1 à 5.6) Guide de référence du développeur (Nouvelle édition) Avant-propos 1. Les objectifs de ce livre 13 2. Les principaux sujets qu'aborde ce livre 13 3. À qui s adresse ce livre? 14 4. Les pré-requis 14 Introduction à MySQL 1. Introduction aux bases de données

Plus en détail

Héritage en java : Calculatrice SDC

Héritage en java : Calculatrice SDC Programmation orientée objet L3 MIAGE Héritage en java : Calculatrice SDC Travail à rendre : le code complet du projet SDC sous forme d une archive tar.gz. L archive comportera trois répertoires : un répertoire

Plus en détail

Le service pack 6 (SP6) est le dernier disponible pour visual studio 6. Ce dernier devrait être maintenu par Microsoft jusqu en 2008.

Le service pack 6 (SP6) est le dernier disponible pour visual studio 6. Ce dernier devrait être maintenu par Microsoft jusqu en 2008. 1 CONCEPT DE BASE 1.1 Visual Basic 6 1.1.1 Pour quoi faire? VB est un langage de type RAD : «Rapid Application Development». Il permet de créer des applications rapidement grâce à une conception simple

Plus en détail

édition revue et corrigée avec Java SE 7 7 1 Les bases 11 Compiler un programme Java 13 Exécuter un programme Java 14 Définir le chemin de classe 15

édition revue et corrigée avec Java SE 7 7 1 Les bases 11 Compiler un programme Java 13 Exécuter un programme Java 14 Définir le chemin de classe 15 Table des matières Au sujet de l auteur 1 Introduction 3 édition revue et corrigée avec Java SE 7 7 1 Les bases 11 Compiler un programme Java 13 Exécuter un programme Java 14 Définir le chemin de classe

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

1. Eléments de base du langage C

1. Eléments de base du langage C 1 1. Eléments de base du langage C Généralités Programme et sous-programme Fonction C Structure d un programme C Vocabulaire de base et syntaxe Exemples 2 Généralités Crée en 1972 par D. Ritchie pour écrire

Plus en détail

à l édition de textes

à l édition de textes Introduction à l édition de textes Introduction Le traitement de texte consiste en la création et la modification de textes (appelés aussi documents) à l'aide d'un ordinateur. Les premiers logiciels de

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Introduction à Visual C++

Introduction à Visual C++ Algorithmique/Langage 1ère année Introduction à Visual C++ Yacine BELLIK IUT d Orsayd Université Paris XI Plan Aperçu u global de l'environnement Zone des messages Zone d'édition dition Zone d'exploration

Plus en détail