0% ont trouvé ce document utile (0 vote)
15 vues28 pages

SQL avec Python et WampServer

Le document présente un cours sur Python avec des explications sur SQL avec Python, les fonctions, et un projet final sur une application de gestion de notes pour les étudiants avec génération de relevés PDF. Le document contient le plan du cours et les détails pour chaque partie.

Transféré par

Lorie Steryline
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues28 pages

SQL avec Python et WampServer

Le document présente un cours sur Python avec des explications sur SQL avec Python, les fonctions, et un projet final sur une application de gestion de notes pour les étudiants avec génération de relevés PDF. Le document contient le plan du cours et les détails pour chaque partie.

Transféré par

Lorie Steryline
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Python

Licence 3
Séance 4
Souleymane BAH
bsouleymane@[Link]
Plan de la séance
• Révision cours passé
• Contrôle du devoir de maison
• SQL avec Python (suite et fin)
• Fonctions
• Projet final
• Discussion
• Ressources pour aller plus loin

mercredi 23 novembre 2022 2


Révision cours passé
1. Fichiers et persistance ?
2. Ouvrir fichier ?
3. Modes ouverture ?
• 'w' vs 'a'
4. De quoi Python à besoin pour interagir avec le SGBD MySQL ?

mercredi 23 novembre 2022 3


Contrôle du devoir de maison
1. Ecrire un code qui demande un nom d’un fichier existant
2. Puis ouvre le fichier
3. Puis affiche ses lignes

mercredi 23 novembre 2022 4


SQL avec Python 1/13
• WampServer
• Windows Apache MySQL PHP
• Télécharger :
• [Link]
• Installer
• Choisir le navigateur et l’éditeur de texte par défaut
• Démarrer WampServer

mercredi 23 novembre 2022 5


SQL avec Python 2/13
• Bonus : PORT OCCUPÉ PAR PROCESSUS + ARRÊT PROCESSUS
• Ouvrir CMD en tant qu’administrateur
• > netstat -bano | more
• Rechercher le PID du processus écoutant sur le port 3306
• Ouvrir le Gestionnaire de tâches
• Ajouter PID au Gestionnaire de tâches
• Clic droit  PID  Classer par PID  Tuer processus

mercredi 23 novembre 2022 6


SQL avec Python 3/13
• Connecteur Python
• Télécharger puis Installer Microsoft Visual C++ 2015
• [Link]
• Télécharger puis Installer le connecteur
• [Link]

mercredi 23 novembre 2022 7


SQL avec Python 4/13
• Connexion : [Link]

mercredi 23 novembre 2022 8


SQL avec Python 5/13
• Création base de données : [Link]

mercredi 23 novembre 2022 9


SQL avec Python 6/13
• Voir bases de données existantes : view_db.py
• phpMyAdmin : [Link]
• Utilisateur : root
• Mot de passe : VIDE (pas de mot de passe)
• Python :

mercredi 23 novembre 2022 10


SQL avec Python 7/13
• Création table : create_table.py

mercredi 23 novembre 2022 11


SQL avec Python 8/13
• Création table : view_tables.py
• phpMyAdmin : [Link]
• Utilisateur : root
• Mot de passe : VIDE (pas de mot de passe)
• Python :

mercredi 23 novembre 2022 12


SQL avec Python 9/13
• Insérer données : [Link]

mercredi 23 novembre 2022 13


SQL avec Python 10/13
• Voir données : view_data.py
• phpMyAdmin : [Link]
• Utilisateur : root
• Mot de passe : VIDE (pas de mot de passe)
• Python :

mercredi 23 novembre 2022 14


SQL avec Python 11/13
• Filtrer les données : [Link]
• Python :

mercredi 23 novembre 2022 15


SQL avec Python 12/13
• Mise à jour de données : [Link]

• Vérifier (phpMyAdmin et Python)

mercredi 23 novembre 2022 16


SQL avec Python 13/13
• Filtrer les données : [Link]

• Vérifier (phpMyAdmin et Python)

mercredi 23 novembre 2022 17


Fonctions 1/3
• Répétitions dans code
• Fonctions : exécuter le même code sur différentes valeurs
• Définition function
• def nom_function(param_1, param_2, …, param_n):
# code
return valeur_de_retour
• Appel function : les arguments effectifs
• ma_variable = ma_function(arg_1, arg_2, …, arg_n)

mercredi 23 novembre 2022 18


Fonctions 2/3
TP 7 : ma calculatrice modulaire
• Ecrire les fonctions somme(), diff(), produit(), division(), modulo(),
plus_grand() qui prennent deux nombres comme paramètres et qui
effectuent respectivement leurs somme, difference, produit, division,
modulo et comparaison (renvoie le plus grand)
• Ecrire du code pour tester votre programme :
• entrez deux nombres (réels)
• effectuez l’ensemble des opérations

mercredi 23 novembre 2022 19


Fonctions 3/3
TP 8 : mon traitement de texte modulaire
• Ecrire la fonction ouvrir_fichier() qui prend en paramètre le nom d’un
fichier et le mode d’ouverture et renvoie l’identifiant de fichier
• Ecrire du code pour tester votre programme
• Ecrire la fonction ecrire_ligne_fichier() qui prend deux paramètres : le nom
d’un fichier et une ligne de texte. La fonction ajoute ensuite la ligne dans le
fichier (en utilisant ouvrir_fichier())
• Ecrire du code pour tester votre programme
• Ecrire la fonction lire_fichier() qui prend en paramètre le nom d’un fichier
et qui affiche son contenu (en utilisant ouvrir_fichier())
• Ecrire du code pour tester votre programme
mercredi 23 novembre 2022 20
Projet final : Application de gestion des notes 1/4
• Vous avez été retenu pour réaliser l’application de gestion des notes de
votre école. Le cahier de charges parle des fonctionnalités ci-après :
• Gestion des étudiants : ajout, modification, recherche et suppression. Il faut
noter que chaque étudiant a un matricule unique
• Gestion des matières : ajout, modification, recherche et suppression. Chaque
matière a un coefficient
• Gestion des notes : ajout, modification, recherche et suppression. Il existe trois
évaluations : devoir, examen et projet. L’examen a un coefficient de 2 par
rapport aux autres : moyenne = (devoir + examen*2 + projet) / 4
• Génération de relevés PDF : l’application doit pouvoir générer le relevé de
notes de chaque élève en version PDF (1 fichier PDF par élève)

mercredi 23 novembre 2022 21


Projet final : Application de gestion des notes 2/4
• Vous avez été retenu pour réaliser l’application de gestion des notes de votre
école. Le cahier de charges parle des contraintes techniques suivantes :
• Utilisation de fonctions
• Stockage des données dans une base de données MySQL
• Code lisible, élégant et maintenable

mercredi 23 novembre 2022 22


Projet final : Application de gestion des notes 3/4
• Travail à rendre
• Rapport écrit contenant les noms des membres du groupe (4 membres max) et
présentant la démarche utilisée.
• Joindre le code et le schéma de la base SQL (code Python de création de la base et des
tables)
• ÇA DOIT S’EXÉCUTER TOUT SEUL
• Envoyer à :
• bsouleymane@[Link]
• Objet du mail : PROJET PYTHON L3 UATM
• Date limite : le dimanche 25 décembre 2022 à 23h59

mercredi 23 novembre 2022 23


Projet final : Application de gestion des notes 4/4
• Ressources
• Générer un PDF depuis Python : utiliser la librairie ReportLab
• Installation : en ligne de commande (CMD) en mode administrateur
• python -m pip install reportlab
• Utilisation : [Link]

mercredi 23 novembre 2022 24


Projet final : Application de gestion des notes

QUESTIONS ?
mercredi 23 novembre 2022 25
Discussion
• Examen final
• Reprendre et comprendre totalement le cours
• Reprendre tous les codes (devoirs de maison compris)
• Sinon ~= 0

mercredi 23 novembre 2022 26


Ressources pour aller plus loin
• Graphical User Interface : [Link]

mercredi 23 novembre 2022 27


M E R C I

mercredi 23 novembre 2022 28

Vous aimerez peut-être aussi