Vous êtes sur la page 1sur 25

Python

Licence 3
Séance 1
Souleymane BAH
bsouleymane@gmail.com
Plan de la séance
• Rappels sur la programmation
• Présentation du langage Python
• Installation de Python et d’un environnement de développement
• Types de données et variables

vendredi 4 novembre 2022 2


Rappels sur la programmation 1/4
• Architecture d’un ordinateur ?
• Programme ?
• Langage de Bas niveau vs Langage de Haut niveau ?
• Interprété vs Compilé ?
• Programmation procédurale vs Orientée Objet ?
• Variable et constante ?

vendredi 4 novembre 2022 3


Rappels sur la programmation 2/4
• Architecture d’un ordinateur

Crédits : Wikimedia

vendredi 4 novembre 2022 4


Rappels sur la programmation 3/4
• Architecture d’un ordinateur
• Programme : suite d’instructions exécutées par le processeur
• Langage de Bas niveau vs Langage de Haut niveau
• Bas niveau : proche du matériel, peu d’abstraction par rapport à l’archi, peu portable
• Haut niveau : proche de l’humain, sans tenir compte des caractéristiques de l’ordi
• Interprété vs Compilé : programme transformé en code lisible par l’ordinateur
• Interprété : traduit en code machine en temps réel
• Compilé : directement transformé en code machine après l’écriture du code

vendredi 4 novembre 2022 5


Rappels sur la programmation 4/4
• Programmation procédurale • vs orientée objet ?

Crédits : WayToLearnX
• Variable et constante : association entre identifiant et valeur
• Variable : valeur pouvant changer au cours du temps
• Constante : valeur figée après initialisation
vendredi 4 novembre 2022 6
Présentation du langage Python
• Première sortie : 20 février 1991, Guido van Rossum
• Langage de haut niveau, interprété
• Multiplateforme : Windows, Linux, macOS, Android, iOS
• Python 2 vs Python 3
• Python 2.7 : éléments obsolètes et redondants, fin du support en 2020
• Python 3 : décembre 2008, plus de compatibilité ascendante
• Indentation obligatoire : pas de ";" final ni de "{}"
• PEP 8 : style de programmation
• Ensemble de règles pour écrire code
• Indentation, manière de nommer les variables, manière de commenter le code, …
• Code lisible, facilement maintenable
• Utilisation : web, intelligence artificielle, cybersécurité, …
• Utilisateurs notables : Google, Facebook, NASA, …

vendredi 4 novembre 2022 7


TP1 : Installation de Python et d’un IDE 1/3
• Windows 7 : Python 3.8.10
• 32 bits : https://www.python.org/ftp/python/3.8.10/python-3.8.10.exe
• 64 bits : https://www.python.org/ftp/python/3.8.10/python-3.8.10-amd64.exe
• Windows 8 et Windows 10 : Python 3.11.0
• 32 bits : https://www.python.org/ftp/python/3.11.0/python-3.11.0.exe
• 64 bits : https://www.python.org/ftp/python/3.11.0/python-3.11.0-amd64.exe
• Python 3.8.10
• IDE : Notepad++
• 32 bits : https://github.com/notepad-plus-plus/notepad-plus-
plus/releases/download/v8.4.6/npp.8.4.6.Installer.exe
• 64 bits : https://github.com/notepad-plus-plus/notepad-plus-
plus/releases/download/v8.4.6/npp.8.4.6.Installer.x64.exe

vendredi 4 novembre 2022 8


TP1 : Installation de Python et d’un IDE 2/3
• Installer Python 3.8.10
• Cocher Add Python 3.8 to PATH
• Customize installation
• Advanced options
• Cocher Install for all users
• Installer
• Si Python 3.8 non ajouté à PATH (par exemple non coché) :
• Retrouver puis Copier le chemin du dossier d’installation
• 32 bits : C:\Program Files (x86)\Python38
• 64 bits : C:\Program Files\Python38
• Clic droit sur Ce PC
• Propriétés
• Paramètres avancés du système
• Variables d’environnement
• Variables système
• Path
• Nouveau
• Coller la valeur puis valider
• Tester : Menu Démarrer  cmd  python  >>> print("Bonjour tout le monde")  >>> exit()

vendredi 4 novembre 2022 9


TP1 : Installation de Python et d’un IDE 3/3
• IDE : Integrated Development Environment
• Indentation automatique
• Coloration syntaxique
• Débogage
• …
• Installer Notepad++
• Au besoin : Localization French
• Configurer Notepad++ pour exécuter du code Python
• essai01.py  print("Bonjour tout le monde")
• Exécution  Exécuter  python "$(FULL_CURRENT_PATH)"
• Exécution  Exécuter  python -i "$(FULL_CURRENT_PATH)"
• Exécution  Exécuter  Enregistrer :
• Exécuter Python
• CTRL + F5
vendredi 4 novembre 2022 10
Types de données et variables 1/12
• Mots réservés Python
• Signification particulière
• Ne peut être utilisée comme nom de variable ou de constante
and as assert break class continue def del
elif else except exec * finally for from global
if import in is lambda not or pass
print * raise return try while with yield
True ** False ** None **

• * Python 2 uniquement
• ** Python 3 uniquement

vendredi 4 novembre 2022 11


Types de données et variables 2/12
4 Types primitifs
• Numériques
• Entiers (integer)
• Virgules (float)
• Chaîne de caractères (strings)
• Booléens (Boolean)

vendredi 4 novembre 2022 12


Types de données et variables 3/12
Numériques
• Entiers (integer) : 5, 10, 2022, 0
• Virgules (float) : 5.1, 10.2, 2022.0, 0.0

Pratique
• >>> type(5)
• >>> type(2022)
• >>> type(0)
• >>> type(5.1)
• >>> type(10.2)
• >>> type(2022.0)
• >>> type(0.0)
vendredi 4 novembre 2022 13
Types de données et variables 4/12
Chaînes de caractères (strings) Pratique
• 'bonjour' 1. >>> type('bonjour Monsieur')
• "bonsoir"
• '2022'
2. >>> type("bonjour Monsieur")
• "0.0" 3. >>> type('2022')
• Concaténation : + 4. >>> type("0.0")
• print('Bonjour' + ' Monsieur')
• '\tMa tabulation'
5. Afficher les 5 derniers
• "Ma venue à l’école"
exemples à gauche
• "Ma venue à \"Cotonou\" ce matin" >>> print('...')
• 'Ma venue à \'Cotonou\' ce matin‘
vendredi 4 novembre 2022 14
Types de données et variables 5/12
Booléens (Boolean)
• True
• False

Pratique
• >>> type(True)
• >>> type(False)

vendredi 4 novembre 2022 15


Types de données et variables 6/12
• Commentaires
• # mon commentaire
• print("test") # mon commentaire de fin de ligne
• # Commentaire
# sur plusieurs
# lignes
• """
Autre commentaire
sur plusieurs
lignes
"""

vendredi 4 novembre 2022 16


Types de données et variables 7/12
• Variable : association entre identifiant et • Pratique :
valeur 1. >>> mon_entier = 2022
• Déclaration : 2. >>> print(mon_entier)
• >>> nom_variable = valeur 3. >>> type(mon_entier)
4. >>> ma_decimale = 2022.2
• Nom variable 5. >>> print(ma_decimale)
• Donner nom significatif : 6. >>> type(ma_decimale)
• >>> x = "Bonjour"
7. >>> ma_chaine_1 = "J’aime Python"
• >>> message = "Bonjour"
8. >>> print(ma_chaine_1)
• Ne peut pas utiliser un mot réservé
9. >>> type(ma_chaine_1)
• Ne peut pas commencer par un chiffre
• Ne peut pas contenir un espace 10. >>> ma_decision = False
11. >>> print(ma_decision)
• Sensible à la casse
12. >>> type(ma_decision)
• Pas d’accents, ni de tirets
• Suite de mots séparés par _ : 13. >>> annee = 2021
• >>> message_accueil = "Bienvenue" 14. >>> Annee = 2022
15. >>> print(annee)
vendredi 4 novembre 2022
16. >>> print(Annee) 17
Types de données et variables 8/12
Variables
• Pratique (suite et fin)
1. >>> a = 5
2. >>> print(a)
3. >>> b = 15
4. >>> print(b)
5. >>> a = b
6. >>> print(a)
7. >>> print(b)
8. >>> b = 20
9. >>> print(b)
10. >>> print(a)

vendredi 4 novembre 2022 18


Types de données et variables 9/12
Types de données "complexes"
• Liste
• Tuples
• Dictionnaires

vendredi 4 novembre 2022 19


Types de données et variables 10/12
Types de données "complexes"
Liste Pratique
• Regrouper différents éléments 1. Créer puis afficher une liste matieres comprenant les éléments
• Peuvent être de types différents suivants : Python, Linux, web, IA, Linux.
• On peut même stocker une autre liste 2. Ajouter la matière Réseaux à la liste
• Définition 3. Afficher la longueur
• ma_liste = [elt_1, elt_2, …, elt_n]
• Accès 4. Afficher la liste : >>> print(matieres) OU >>> matieres
• >>> ma_liste[0] # 1er élément 5. Supprimer l’élément Linux
• >>> ma_liste[1] # 2ème élément
• >>> ma_liste[-1] # Dernier élément 6. Afficher la longueur de la liste puis son contenu
• >>> ma_liste[-2] # Avant-dernier élément 7. Trier la liste
• Modifier : 8. Afficher la liste ainsi triée
• >>> ma_liste.append(elt_n+1) # Ajouter
• >>> ma_liste.remove(elt_x_existant) # Supprimer
• Longueur : >>> len(ma_liste)
• Trier : >>> ma_liste.sort()
• String : liste de caractères
• Documentation Python pour plus de détails
https://www.python.org/doc/versions/
vendredi 4 novembre 2022 20
Types de données et variables 11/12
Types de données "complexes" Pratique
• Tuples • Créer puis afficher un tuple
tuple_matieres comprenant les éléments
• Similaire aux listes suivants : Python, Linux, web, IA, Linux.
• Ne peuvent pas être modifiés
• Ajouter la matière Réseaux au tuple
• Définition
• mon_tuple = (elt_1, elt_2, …, elt_n) • Afficher la longueur
• Afficher le tuple
• Supprimer l’élément Linux
• Afficher la longueur de la liste puis son
contenu
• Trier la liste

vendredi 4 novembre 2022 21


Types de données et variables 12/12
Types de données "complexes" • Accès : >>> mon_dico['clé']
• Modifier
• Dictionnaires • Ajout/Écrasement : ajouter paires clés-valeurs
• Structure de données paire clés-valeurs • Suppression : >>> mon_dico.pop('clé')

• Clés uniques • Documentation Python pour plus de détails


• Création https://www.python.org/doc/versions/
• >>> mon_dico = dict()
Pratique
• >>> mon_dico['clé_1'] = valeur_1
• >>> mon_dico['clé_2'] = valeur_2 1. Créez le dictionnaire bulletin ayant la structure suivante 
Réseaux : 15, IA : 17, Linux : 10
• …
2. Afficher le dictionnaire
OU
• >>> mon_dico = { 3. Afficher la note de Linux
'clé_1' : valeur_1, 4. Ajouter la note 5 pour la matière Python puis afficher le bulletin
'clé_2' : valeur_2 5. Modifier la note de Python : 20 puis afficher le bulletin
} 6. Supprimer la note de Réseaux puis afficher le bulletin

vendredi 4 novembre 2022 22


Récapitulatif de la séance
• Python
• Installation Python et IDE
• Types de données et variables
• Types primitifs
• Types complexes

vendredi 4 novembre 2022 23


Questions ?
Devoir de maison
• Mettre la chaîne de caractère "Bonjour Monsieur" dans la variable
salutation
• Afficher la longueur de la chaîne
• Afficher la première lettre
• Afficher l’avant-dernière lettre

vendredi 4 novembre 2022 25

Vous aimerez peut-être aussi