Programmation Python
INFRASTRUCTURE DIGITALE (DEV et ID)
MODULE 106
MANSOURI MED 2024
PROGRAMMER EN PYTHON
Python est un langage de programmation de haut niveau, interprété et
polyvalent, créé par Guido van Rossum et publié pour la première fois en
1991. Il est connu pour sa syntaxe claire et concise, ce qui en fait un
choix populaire pour les débutants en programmation ainsi que pour les
développeurs expérimentés. Voici quelques caractéristiques importantes
de Python :
Caractéristiques de
Python
• Haut niveau : un programme Python est 3 à 5 fois moins cours qu’un programme C ;
• Orienté objet : supporte l’héritage et la surcharge des opérateurs ;
• Libre : « Open source;
• Portable : peut fonctionner sur différentes plateformes OS (operating system) ;
• Interprété. (non compilé)
• Dynamiquement typé : tout objet manipulable par le programmeur possède un type bien défini à
l'exécution qui n'a pas besoin d'être déclaré à l'avance ;
• Efficace : Python intègre un système de gestion d'exceptions permettant de simplifier
considérablement la gestion des erreurs (PEP) (Python Enhancement Proposal);
• Doté d'un gestionnaire de mémoire : Python gère ses ressources (mémoire, descripteurs de
fichiers... ) sans intervention du programmeur.
• Facile à apprendre/à lire/à écrire/ (syntaxe très simple et combinée à des types de données évolués
• Évolutif : Python est un langage qui continue à évoluer grâce à une communauté d’utilisateurs très actifs.
• Puissant : doté de bibliothèques très variées (numpy, scipy, etc.).
Critères de choix d’un langage de programmation
Langage interprété :
•est un langage dont le code source est
directement exécuté ligne par ligne par un
interpréteur au moment de l'exécution.
•Les langages interprétés ne nécessitent
pas de phase de compilation avant
l'exécution du programme.
•Chaque instruction du code source est
traduite en instructions exécutables par
l'interpréteur au fur et à mesure que le
programme est exécuté. Exemple : Python
est un langage de programmation
interprété.
Langage compilé :
•Un langage compilé est un langage dont le code source est traduit en langage machine
(instructions directement exécutables par le processeur) par un compilateur avant l'exécution.
•Le processus de compilation traduit l'ensemble du code source en un fichier exécutable qui
peut être exécuté indépendamment de l'éditeur de code.
•C: est un langage de programmation compilé.
Que peut-on faire avec PYTHON ?
• Python est un langage de programmation de plus en plus populaire.
• Domaines d’application :
• Des graphiques (matplotlib) ;
• De la bio-informatique (Biopython) ;
• Data science (pandas, scikit-learn) ;
• Des applications web ;
• Interfacer des systèmes de gestion de bases de données ;
• Du calcul scientifique/statistique (numpy, scipy) ;
• Des jeux ;
• Etc.
PROGRAMMER EN PYTHON
Installation de Python
TRANSFORMER UNE SUITE D’ÉTAPES ALGORITHMIQUES EN UNE SUITE D’INSTRUCTIONS PYTHON
TRANSFORMER UNE SUITE D’ÉTAPES ALGORITHMIQUES EN UNE SUITE D’INSTRUCTIONS PYTHON
PROGRAMMER EN PYTHON
Exercice 1 :
my_name = “votre nom"
Affiche Hello and welcome my_name !)
Exercice2
2.1 Calculer la surface du rectangle dont largeur = 20 et hauteur = 5/3 dela hauteur
2.2 Assignez les valeurs respectives 3, 5, 7 à trois variables a, b, c.
Effectuez les opérations: a+b, a-b, a*b, reste de c et b, le quotient de c et 2, a-b//c
Écrivez un programme en Python qui demande à l'utilisateur d'entrer la note d'un étudiant, puis affiche la mention correspondante selon les critères
suivants :
Si la note est supérieure ou égale à 16, affichez "Très bien".
Si la note est comprise entre 14 et 16 (inclus), affichez "Bien".
Si la note est comprise entre 12 et 14 (inclus), affichez "Assez bien".
Si la note est comprise entre 10 et 12 (inclus), affichez "Passable".
Sinon, affichez "Insuffisant".
Optimisation du code (bonnes pratiques de codage, commentaires, …)
Commentaire
INDENTATION
CHAPITRE 2
MANIPULER LES DONNÉES
Listes, tuples, dictionnaires, ensembles (set)
EXERCICES
Exercice : Manipulation de listes
a. Créez une liste appelée nombres contenant les entiers de 1 à 10 (inclus).
b. Ajoutez le nombre 11 à la fin de la liste nombres.
c. Affichez la longueur de la liste nombres.
d. Supprimez le nombre 3 de la liste nombres.
e. Remplacez le nombre 7 par 20.
f. Créez une deuxième liste appelée nombres_pairs contenant les nombres
pairs de 2 à 10 (inclus).
g. Concaténez les listes nombres et nombres_pairs dans une nouvelle liste
appelée tous_les_nombres.
h. Triez la liste tous_les_nombres par ordre croissant.
i. Inversez l'ordre des éléments de la liste tous_les_nombres.
DICTIONNAIRE
Manipulation des données: Utilisation des fichiers
Bloc n° 1
Bloc n° 1
Titre : Affectation
#affectation :
v ← expression
v = expression
Saisir au Clavier (x) (entier)
# saisie au clavier:
Afficher à l’ecran("Entrez n: ")
x = input() # x est une chaine
cl.saisir(n)
x = int(input()) # saisie convertie
e.afficher("Total : ", t)
n = int(input("Entrez n: "))
#affichage :
print("Total :", t)
• Bloc n° 2 # affichage sans retour à la ligne :
d : Durée // définition print("Total :", t, end="")
d1: Durée // définition
Accès aux champs de d : Bloc n° 2
d.h ← 12 d = Duree() # définition
d.m ← 25 d1 = Duree() # définition
d.s ← 40 # Accès aux champs de d :
d1 ← Durée(15, 34, 12) d.h = 12
d.m = 25
d.s = 40
d1 = Duree(15, 34, 12)
Exercice : traduire les blocs suivants en Python
Activité 1 : traduction des algorithmes en scripts
def nba(x):
fonction nba(x : chaine) → entier ≥ 0 # nba(x) renvoie le nombre de 'a' contenus dans la chaine x
// nba(x) renvoie le nombre de A contenus dans la chaine x # lexique de nba
lexique de nba na = int() # Nombre de a de la pp de x
na : entier ≥ 0 // na = nombredea(pp) i = int() # intermédiaire : indice de parcours de x
i : entier ≥ 0 // indice de parcours de x # algorithme de nba
algorithme de F i=0
i = 0 ; na ← 0 na = 0
tantque i < longueur(x) faire while i < len(x):
si nième(x,i) = 'a' ou nième(x,i) = 'A' alors na ← na + 1 fsi if (x[i] == 'a') or (x[i] == 'A'):
i←i+1 na = na + 1
ftq #fsi
renvoyer (na) i=i+1
#ftq
return na
Activité 1 : les commandes
PowerShell
Exercices :
1. Afficher toutes les commandes disponibles pour une utilisation dans votre session en cours.
2. Trouver le contenu de l'aide pour une commande particulière.
3. Contrôler le niveau de sécurité entourant les scripts PowerShell.
4. Quels services sont installés sur le système ?
5. Extraire des données que vous pouvez utiliser dans un rapport ou envoyer à quelqu'un d'autre.
6. Passer les événements logs de votre machine.
7. Effacer les entrées de votre historique de commandes.
Activité 2 : créer et exécuter le premier programme Bash
Exercice 1 -Exécuter un script Bash à partir du terminal ou en exécutant n'importe quel fichier Bash, La sortie de la
commande sera "Bonjour Programme Bash".
Exercice 2: Écrire un script Bash qui accueille l'utilisateur et lui demande son nom pour lui offrir une
salutation personnalisée (Bonjour nom_saisie).
• Le script doit commencer par afficher un message de bienvenue général à l'utilisateur.
• Ensuite, il doit demander à l'utilisateur d'entrer son nom.
• Une fois que l'utilisateur a saisi son nom, le script doit afficher un message de salutation personnalisé
utilisant le nom saisi.
• Assurez-vous que le script inclut des commentaires pour expliquer chaque étape et améliorer la lisibilité
du code.
Exercice 1 : les listes
Écrire un script qui détermine si une chaine de caractères donnée est un palindrome (c’est-à-dire une chaine qui peut se
lire indifféremment dans les deux sens),comme par exemple "SOS", "radar", "elle".
Exercice 2 : les listes
1. Soit la liste L=[0,1,2,3,4,5,6,7,8,9,10], créer les listes suivantes par compréhension à partir de L :
a) L1=[0,2,4,6,8,10,12,14,16,18,20]
b) L2=[[0,0],[1,1],[2,2],[3,3,[4,4],[5,5],[6,6],[7,7],[8,8],[9,9],[10,10]]
c) L3=[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10]
d) L4=[0,1,2,3,4,5,6,7,8,9,10, 0,1,2,3,4,5,6,7,8,9,10]
e) L5=[1,2,2,3,3,3,4,4,4,4,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10]
2. Soient les listes suivantes :
• L1= [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
• L2 = [’Janvier’, ’Février’, ’Mars’, ’Avril’, ’Mai’, ’Juin’, ’Juillet’, ’Août’, ’Septembre’, ’Octobre’,’Novembre’, ’Décembre’]
3. Soient les listes suivantes :
• L1= [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
• L2 = [’Janvier’, ’Février’, ’Mars’, ’Avril’, ’Mai’, ’Juin’, ’Juillet’, ’Août’, ’Septembre’, ’Octobre’,’Novembre’, ’Décembre’]
Créer la liste L3 par compréhension à partir de L1 et L2 telle que :
L3= [(’Janvier’,31),(’Février’,28),(’Mars’,31),...].
Exercice 3 : les listes
Écrire un script Python qui cherche le premier et le deuxième maximum présents dans une liste L en faisant un seul parcours
de la liste. Exemple :
L= [32, 5, 12, 8, 3, 75, 2, 15]. Le programme affichera : "le premier maximum est 75, le deuxième est 32"