Introduction à la programmation Expressions, opérateurs et variables Vincent Martin email : [email protected] page personnelle : http://martin.lsis.univ-tln.fr Master 1. LLCE Université de Toulon 20 février 2015 M1LA - Python 1/15 Présentation Langage créé en 90 par De Guido Van Rossum. Principales caractéristiques : syntaxe simple typage dynamique portable (Windows, Linux, MacOS) licence libre extensible multi-paradigme (impératif et orienté objet) interprété ou pré-compilé (byte code) M1LA - Python 2/15 Modes d’utilisation Interactif dialogue avec l’interprète. Chaque instruction est interprétée et exécutée immédiatement. Script écriture du programme dans un éditeur de texte ou dans un environnement de développement intégré (EDI). L’exécution du script se fait via l’interpète. M1LA - Python 3/15 Mots réservés (33 mots) structures de contrôle : break, continue, if, elif, else, for, in, while, pass ; expressions logiques : and, or, not, True, False ; modularité : class, def, global, nonlocal, return, from, import ; exceptions : try, except, finally, raise ; autres : as, assert, del, is, lambda, None, with, yield. M1LA - Python 4/15 Rappel Un programme définit la séquence d’instructions spécifiant des opérations à effectuer sur les données afin d’obtenir un résultat. M1LA - Python 5/15 Données et variables Les données sont stockées en mémoire Un identificateur (nom de variable) permet d’accéder à une donnée via un nom pour la réutiliser par la suite Affecter une variable consiste à la définir et à lui affecter une valeur. Par exemple : x = 10 # affectation de la valeur 10 à la variable x nom = ’Dupont’ # affectation de la valeur ’Dupont’ à la variable nom Règle La 1ère lettre d’un identificateur doit être une lettre, ou un souligné (underscore) et peut être suivie de lettres, chiffres, soulignés ou points. M1LA - Python 6/15 Opérateurs Les opérateurs permettent de réaliser des opérations mathématiques Opérateurs arithmétiques : +, -, /, //, *, ** Opérateurs de comparaisons (booléens) : <, >, <=, >=, ==, != Opérateurs logiques : and, or, not Exemples : 2*3 5//2 2 < 3 # retourne True M1LA - Python 7/15 Expressions Une expression est obtenue en combinant des valeurs, des identificateurs de variables et des opérateurs. Python peut évaluer une expression pour obtenir une valeur unique. Une expression arithmétique est : un nombre (e.g. 2) un opérateur appliqué à deux expressions arithmétiques (e.g. : 2 + 3) une combinaison d’opérateurs arithmétiques avec des expressions arithmétiques. Une expression booléenne est Une valeur booléenne (True, False, 2<3, . . . ) Un identificateur de variable booléenne Une combinaison d’expressions arithmétiques avec les opérateurs de comparaisons. M1LA - Python 8/15 Priorité des opérateurs Expression qui contient plusieurs opérateurs : l’évaluation se fait de la gauche vers la droite si les opérateurs ont même priorité. Priorité des opérateurs Opérateurs arithmétiques : Retenir Please Excuse My Dear Aunt Sallie → (), **, *, /, +, - M1LA - Python 9/15 Typage des variables Typage dynamique : le programmeur ne spécifie pas explicitement le type d’une variable Python détermine automatiquement le type des variables en fonction de sa valeur En interne, Python représente le type d’une variable “pyhthon” → String 1.3 → float M1LA - Python 10/15 Typage des variables Numériques int : entiers relatifs ; float : réels. Booléens bool : True et False Chaines de caractères str : spécifiées soit entre apostrophes, soit entre guillemets mot = ’Bonjour’ ou mot = "Bonjour" M1LA - Python 11/15 Transtypage Conversion explicite d’un type vers un autre. Pourquoi ? Concaténation d’une chaı̂ne de caractères et d’un entier (“J’ai 20 ans.”) Opérations sur des nombres réels alors que l’on a des entiers (conversion entier → réel) int() : conversion en entier (si réalisable) float() : conversion en flottant (si réalisable) str() : conversion en chaine de caractères (si réalisable) M1LA - Python 12/15 Transtypage : exemples >>> int(3.14) 3 >>> str(3.14) 3.14 (c’est une cha^ ıne de caractères) >>> age = 20 >>> print "j’ai " + str(age) + " ans." j’ai 20 ans. M1LA - Python 13/15 Entrées / Sorties simples Moyen pour un programme de communiquer avec l’extérieur (par exemple avec l’utilisateur) Entrée clavier : fonction input() ou raw input() Sortie écran : fonction print() Exemple : nom = raw_input(’Entrez votre nom : ’) print("Bonjour " + nom) M1LA - Python 14/15 Ce qu’il faut retenir Python, 2 modes d’utilisation : interactif, script Chaque donnée a un type (int, float, str) Affectation d’une variable : x = 10 (simple égale) Opérateurs arithmétiques : +, -, /, //, *, ** Opérateurs de comparaisons (booléens) : <, >, <=, >=, ==, != Opérateurs logiques : and, or, not Le transtypage permet de réaliser des opérations sur des données de types différents ("Il fait + str(n) + "degrés") input ou raw input() pour récupérer des données entrées par l’utilisateur print pour afficher des données M1LA - Python 15/15