Académique Documents
Professionnel Documents
Culture Documents
Niveau : TI
TP python révision
Année universitaire :
2023/2024
Liste
Exercice
Soit une liste des produits suivants :
1.Afficher la liste des produits avec deux manières : boucle for et boucle while.
2.Afficher pour chaque produit son prix unitaire (en utilisant %).
4.Afficher les noms des produits ainsi que les montants par produit tel que :
5.Afficher à la fin le montant total = somme de tous les montants par produit.
7.Afficher les noms dans la liste jusqu’à ce que on rencontre « tuyau » on s’arrête.
Correction
Dictionnaire
Exercice 1
Écrire un programme en Python qui demande à l'utilisateur de saisir dix nombres entiers de
son choix et de lui renvoyer un dictionnaire dont les clés sont les entiers saisis et dont les
valeurs sont les listes des diviseurs des nombres saisis.
Correction
listDiv =[]
# on parcourt la liste des entiers de 1 à n
# et on teste si i est un diviseur de n
for i in range(1,n+1):
if n%i == 0:
listDiv.append(i)
return listDiv
# afficher le dictionnaire d
print("Le dictionnaire généré est : d = ", d)
# on teste l'algorithme
# pour les entiers saisis : 8, 12, 10, 6 , 3, 9, 22 , 11 , 17, 15
# Le dictionnaire généré est : d = {8: [1, 2, 4, 8], 12: [1, 2, 3, 4,
6, 12], 10: [1, 2, 5, 10], 6: [1, 2, 3, 6], 3: [1, 3], 9: [1, 3, 9],
22: [1, 2, 11, 22], 11: [1, 11], 17: [1, 17], 15: [1, 3, 5, 15]}
Exercice 2
Etant donné deux dictionnaires Formation1 et Formation2 dont les clés sont
les noms des modules de formations proposées et dont les valeurs des clés sont
les prix associés en Euro. Formation1 = {"Python" : 350 , "Django" : 400 , "PHP" : 320 ,
"Java" : 450}, Formation2 = {"Python" : 570 , "Django" : 350 , "PHP" : 300 , "Java" : 570}.
Ecrire un algorithme qui génère à partir de ces deux dictionnaires, un autre dictionnaire
nommé Formation formé des mêmes clés et dont les valeurs associées sont
les minimum des valeurs des prix de Formation1 et Formation2.
Correction
Exercice 3
Etant donnée un dictionnaire en python dont les clés sont les noms des élèves et
les valeurs sont leurs âges associés:
1
2 d = {"Robert": 17 , "Catherine" : 21 , "Majid": 23 , "Farid" : 15 }
3
Ecrire un algorithme en python qui remplace les âges des élèves au sein du dictionnaire
par 'mineur' si l'age < 18 et 'majeur' si non.
Correction
Chaines de caractères
Exercice 1
Correction
Exercice 2
3. Ecrire un programme qui permet de saisir une chaine de caractère, puis tester les
deux fonctions définies dans les question 1 et 2.
Correction
Exercice 3
o 0 si ch1 = ch2
o -1 si ch1<ch2
Correction
Les fichiers
Exercice 1
Correction
1.
f = open("myFile.txt" , 'w')
f.close()
2.
f = open("myFile.txt" , 'r')
content = f.read()
listContent = content.split()
# fermer le fichier
f.close()
f = open("myFile.txt" , 'w')
f.write(line + "\n")
f.close()
Exercice 2
Correction
f = open("myFile.txt" , 'w')
for line in L:
f.close()
Exercice 3
6. Ecrire un programme qui permet de lire le fichier depuis le caractère 10 jusqu'au caractère
20 de la troisième ligne.
Bon travail