Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
>>> Amphi Python
Mardi 29 Janvier 2007 >>> Amphi Python Valentin Roussellet François Bleibel Pierre-Alexandre Benazet
2
Formation Python VIA Les types de données Les structures de contrôle.
Les fonctions : bien programmer La gestion des fichiers La gestion des erreurs Les modules
3
pour connaître le type d'un objet : type(a)
Les types de données Nombres entiers int 2, -5, , ... Nombres réels float , , ... Booléens bool True, False Listes list [1,3,[42,”a”], -12.5] Dictionnaire dict {“prez”:”PBS”,”un”:1} Chaîne de caractères str "Hello, World" Tuple tuple (1,2,3,”poney”) pour connaître le type d'un objet : type(a)
4
Opérations sur les nombres
Affectation x=2 Incrémentation x= >>>x += 1 ou x = x x=3 Division /3 => /3 => Modulo (reste) %2 donne 1 Puissance 10**3 donne 1000 La priorité des opérateurs mathématiques est respectée
5
Jouons avec les strings
Une chaîne est un texte entre “ “ ou ' ' Retour à la ligne : \n Tabulation : \t Caractères \\, \', \” Insertion d'arguments Conversion de type Exemple : >>>print "Il m'a dit :\n\"bonjour\"" Il m'a dit “bonjour” >>> m=4 >>> a=”joueurs” >>>print "il y a %s %s " %(m,a) il y a 4 joueurs int("3") donne 3
6
Les listes >>>L=[0,12,42] [0,12,42]
>>>L.append(-2) [1,2,3-2] >>>L.insert(1,5) [1,5,2,3,-2] >>>L.reverse( ) [-2,3,2,5,1] >>>L.sort( ) [-2,1,2,3,5] >>>del L[2] [-2,1,3,5]
7
Les dictionnaires ...... “ctionnaire !”
>>>VIA={"prez":"PBS","cotiz":50} {“prez”:”PBS”,”cotiz”:50} >>>VIA["prez"] ”PBS” >>>VIA["cotiz"] >>>VIA.keys( ) [”cotiz”,”prez”] >>>VIA.values( ) [50,”PBS”] >>>del VIA["prez"] {“cotiz”:50} >>>VIA.clear( ) {} >>>VIA[42]="réponse" {42:”réponse”}
8
Les structures de contrôle
1. la structure conditionnelle : if , else, elif ,pass Attention aux conditions a==b a!=b a<=b On peut utiliser les opérateurs logiques and ,or, not ex : if a==b or c!=k : On peut utiliser in ex : if n in [1,3,7] : Attention à la syntaxe ! Indentation et deux-points >>> x=0 >>> if x == 0 : print "ce nombre est nul elif x == 'centrale': pass else: print 'inconnu' ce nombre est nul Deux-points ! Indentation !
9
Les structures de contrôle
2. les boucles FOR >>> Liste=["a","b","c"] >>> for i in Liste: print i a b c >>>range(0,6,2) [0,2,4] >>>range(7) [0,1,2,3,4,5,6] >>> for i in range(7): 1 ... Effectuer une action pour chaque élément d'un ensemble. range(a,b,c) : liste de a à b-1 par pas de c si a>b on obtient la liste vide [] Attention à la syntaxe !
10
Les structures de contrôle
3. les boucles WHILE Agir tant qu'une condition est vraie break : sortir de la boucle avant la fin Attention aux boucles infinies ! Attention à la syntaxe ! >>> a=0 >>> while a !=20000 : a+=1 if a > 1000: break else: print a print "fin" >>> while True : pass
11
Définir une fonction indentation def affiche(i,j): 2 points print i,j
1 2
12
PAS BIEN !!! Bien programmer ... ou pas !
def f(d,f): for k in range(d,f): s=1 for j in range(2,(k/2)+1): if k%j==0: s=j+s if s==k: print k, " " PAS BIEN !!! Noms de variables incompréhensibles On ne sait pas ce que fait la fonction
13
Bien programmer ... =) def nombre_parfait(debut,fin):
"""recherche de nombres parfaits arguments: debut borne inférieure fin borne supérieure résultat: liste des nombres parfaits entre début et fin """ for test in range(debut,fin): #On parcourt tous les nombres de l'intervalle somme=1 for diviseur in range(2,(test/2)+1): if test%diviseur==0: somme+=diviseur if somme==test: print test, " "
14
Entrées au clavier Conversion sous forme de string
input Une entrée valable pour Python >>>entree=input("Votre nom") Votre nom JPRey Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> entree=input("Votre Nom") File "<string>", line 1, in <module> NameError: name 'JPRey' is not defined Votre nom "JPRey" >>>print entree JPRey raw_input Conversion sous forme de string >>>entree=input("Votre nom") Votre nom JPRey >>>print entree JPRey
15
La gestion des fichiers
Ouvrir un fichier : la fonction file( ) Récupérer son contenu avec la fonction .read( ) Ecrire dans le fichier avec la fonction .write(“texte” ) Attention : toujours fermer le fichier avec la fonction .close( ) >>>f=file(“C:\toto.txt”,”r”) >>>contenu=f.read( ) >>>print contenu “toto a été têtu” >>>f=file(“C:\toto.txt”,”w”) >>>f.write(“Obi-Wan Kenobi”) >>>f.close()
16
La gestion des erreurs Une erreur : quelque chose que python ne comprend pas Il existe plusieurs types d'erreurs ZeroDivisionErrror TypeError ValueError ArithmeticError IOError Ce qu'on veut : filtrer les erreurs pour que le programme continue de fonctionner en cas d'erreur
17
La gestion des erreurs Un exemple sans filtrage d'erreur
filename = raw_input("Veuillez entrer un nom de fichier: ") f = open(filename,"r") >>> Veuillez entrer un nom de fichier: exrcices Traceback (most recent call last): File "<pyshell#11>", line 1, in -toplevel- open('exrcices','r') IOError: [Errno 2] No such file or directory: 'exrcices'
18
Remarque: except seul s'applique à toutes les erreurs
La gestion des erreurs Une solution : l'instruction try ... except filename = raw_input("Veuillez entrer un nom de fichier: ") try: f = open(filename,"r") except IOError: print "Le fichier ", filename, "est introuvable" >>> Veuillez entrer un nom de fichier: exrcices Le fichier exrcices est introuvable Remarque: except seul s'applique à toutes les erreurs
19
Les modules Un module est un fichier .py contenant des fonctions et des constantes Exemple: dans string.py: # Capitalize a string, e.g. "aBc dEf" -> "Abc def". def capitalize(s): (...) Exemple: le module math Comment utiliser un module ? Importer le module import math Utiliser une fonction du module importé y = math.sin(x) Ou importer toutes les fonctions du module pour les utiliser dans le code: from math import * y = sin(x) t = cos(x) Ou seulement certaines fonctions: from math import sin, cos
20
Retrouvez ces diapositives sur
Des questions ? Retrouvez ces diapositives sur
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.