Python
Python
Python
def division(x,y):
resultat=x/y
print (resultat)
print("Division terminée")
division(1,0)
3
Gestion des exceptions
Afin de rattraper l’erreur, on place le code qui peut générer une erreur
éventuelle dans le bloc try et on prévoie un traitement alternatif dans le
bloc except.
4
Gestion des exceptions
Syntaxe:
try: #La clause try
<instructions_ susceptible_de_produire_une_erreur>
except <type_exception> : #La clause except
<instruction_à_exécuter_si_une_exception_se_déclenche>
5
Gestion des exceptions
def division(x,y):
try:#La clause de try
resultat=x/y
print (resultat)
print("On est dans le bloc try")
except ZeroDivisionError:#La clause except
print ("Attention division par zero!")
print("Division terminée")
division(1,0)
6
Gestion des exceptions
Exemple 2
>>> division(1,"2")
Attention type de variable erroné
>>> division(1,0)
Traceback (most recent call last):
File "<pyshell#26>", line 1, in <module>
division(1,0)
File "<pyshell#24>", line 3, in division
return x/y
ZeroDivisionError: division by zero
Exemple 3
On peut la corriger de cette manière:
>>> def division(x,y):
try:
return (x/y)
except ZeroDivisionError:
print("Attention division par zero!")
except TypeError:
print("Attention type de variable erroné")
except Exception:
print("Attention une erreur s’est produite")
>>> division(1,0)
Attention division par zero
>>> division(1,"2")
Attention type de variable erroné
>>> division(1,0,3)
Attention une erreur s’est produite
8
Gestion des exceptions
Une liste des exceptions natives et leur signification se trouve dans le lien
suivant:
https://docs.python.org/fr/3/library/exceptions.html#bltin-exceptions
Exemples:
TypeError
NameError
SyntaxError
9
Gestion des exceptions
Finally
On utilise le mot clé finally pour exécuter des instructions quelque soit
les erreurs générées ou non (et même si il y a présence d'un return ).
Dans tous les cas les instructions placées dans finally seront executées.
10
Gestion des exceptions
Exemple:
11
Gestion de la base
des données
Introduction
Un langage standardisé -SQL- est dédié à cette structure et permet aussi bien
de faire des recherches mais aussi des modifications ou des suppressions.
Les logiciels de gestion de bases de données les plus utilisées aujourd'hui sont
des SGBDR - Système de gestion de base de données relationnelles –
14
SQLite
cursor = con.cursor()
requete= ("SELECT * FROM Vente")
cursor.execute(requete)
15
SQLite
con.close()
16
SQLite
cursor = con.cursor()
cursor.execute("DROP TABLE users")
con.commit()
17
SQLite
Ou encore:
X=“Olivier”
Y=“30
cursor.execute("INSERT INTO users (name, age) VALUES (?, ?) ", (x,y) )
con.commit()
Il est également possible de faire plusieurs insert en une seule fois avec la
fonction executemany :
19
SQLite
cursor.execute("SELECT id, name, age FROM users") Le résultat est une liste de tuples:
rows = cursor.fetchall() (1, 'olivier', 30)
for row in rows: (2, ' jean-louis ', 90)
print(row)
20
SQLite
2ème méthode
L'objet curseur fonctionne comme un itérateur, invoquant la méthode
fetchall() automatiquement:
cursor.execute("SELECT id, name, age FROM users")
for row in cursor:
print(row)
id = 2
cursor.execute("SELECT id, name FROM users WHERE id=?", (id, ))
response = cursor.fetchone()
mode d’accès:
"r": ouverture en mode read, le fichier doit exister, sinon un message
d’erreur est retourné;
"w": ouverture en mode write, si le fichier existe, il l’ouvre, écrase le
contenu et positionne le curseur au début, sinon le fichier sera créé ;
"a": ouverture en mode append, le contenu du fichier ne sera pas
écrasé et le nouveau contenu s’ajoute dans le fichier s’il existe, sinon il
sera créé ;
Les fichiers
>>> fichier.close()
Les fichiers
Méthodes Description
read() Lire le contenu du fichier texte ouvert et renvoie une
chaîne de caractères unique. Il est possible de lire :
1. La méthode read()
Exemple:
2. La méthode readline()
Elle renvoie une chaîne correspondante à la ligne courante et passe le curseur,
initialement placé au début du fichier, dans la ligne suivante.
>>> fr=open('zoo.txt','r')
>>> ligne=fr.readline()
>>> while ligne !="":
print(ligne)
ligne=fr.readline()
>>> fr.close()
3. La méthode readlines() : Elle récupère toutes les lignes d’un fichier dans une
liste
>>> fr=open('zoo.txt','r')
>>> contenu=fr.readlines()
>>> contenu
['poisson\n','abeille\n','chat\n','chien\n','oiseau\n','mouton\n']
>>> for ligne in contenu :
print(ligne)
>>> fr.close()
Les fichiers
Exemple1:
Exemple2:
>>> animaux2=['oiseau\n','mouton\n']
>>> fich3=open('zoo.txt','a')
>>> fich3.writelines(animaux2)
>>> fich3.close()
Les fichiers
f = open('filename', 'w')
try:
# traitement sur le fichier
f.write('Bonjour')
finally:
f.close()