Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Ecrire un programme Python pour compresser deux listes de listes.
# Créer deux listes contenant des sous-listes de nombres
liste1 = [[1, 3], [5, 8], [9, 10]]
liste2 = [[2, 4], [6, 7], [11, 12, 14]]
print("Listes originales:")
# Afficher le contenu de 'liste1'
print(liste1)
# Afficher le contenu de 'liste2'
print(liste2)
# Utilisez la fonction "map" pour ajouter les sous-listes correspondantes de "liste1" et "liste2"
res = list(map(list.__add__, liste1, liste2))
# Afficher un message indiquant la liste compressée
print("\nListe compressée:\n" + str(res))
Exercice 2:
Écrire un programme Python pour compter le nombre de listes dans une liste de listes.
Exemple:
Liste originale :
[[1, 2], [6, 9], [8, 5]]
Nombre de listes dans la liste de listes est: 3
Solution:
liste = [[1, 2], [6, 9], [8, 5]]
print("Liste originale:")
# Afficher le contenu de la 'liste'
print(liste)
print("\nNombre de listes dans la liste de listes est:")
# Calculer le nombre de listes dans la liste
print(len(liste))
Exercice 3:
Ecrivez un programme Python pour trouver une liste avec des longueurs maximales et minimales.
Exemple:
Liste originale: [[0], [1, 3], [2, 1, 7]]
Liste avec longueur maximale: (3, [13, 15, 17])
Liste avec longueur minimale: (1, [0])
Solution:
# Définir une fonction "max_len_list" qui trouve la longueur maximale
def max_len_list(in_list):
# Trouver la longueur maximale dans 'in_list'
max_length = max(len(x) for x in in_list)
# Trouver la liste ayant la longueur maximale dans "in_list"
max_list = max(in_list, key=len)
return (max_length, max_list)
# Définir une fonction "min_len_list" qui trouve la longueur minimale
def min_len_list(in_list):
# Trouver la longueur minimale dans "in_list"
min_length = min(len(x) for x in in_list)
# Trouver la liste ayant la longueur minimale dans "in_list".
min_list = min(in_list, key=len)
return (min_length, min_list)
# Créer une liste
liste = [[0], [1, 3], [2, 1, 7]]
print("Liste originale:", liste)
print("Liste avec longueur maximale:", max_len_list(liste))
print("Liste avec longueur minimale:", min_len_list(liste))
Exercice 4:
Écrire un programme Python pour vérifier si une liste imbriquée est un sous-ensemble d’une autre liste imbriquée.
liste1 = [[1, 2], [5, 7], [9, 11], [3, 5, 7]]
liste2 = [[1, 2], [3, 5, 7]]
#Vérifie si tous les éléments de 'liste2' sont contenus dans 'liste1'
print(all(map(liste1.__contains__, liste2)))
Exercice 5:
Écrire un programme Python pour compter le nombre de sous-listes qui contiennent un élément particulier.
Exemple:
Liste originale: [[1, 2], [3, 5], [1, 15], [1, 9, 7]]
Compter 1 dans la liste: 3
Solution:
liste = [[1, 2], [3, 5], [1, 15], [1, 9, 7]]
nbr = 1
ctr = 0
#compter le nombre d'occurrences de l'élément "nbr" dans "liste"
for i in range(len(liste)):
if nbr in liste[i]:
ctr += 1
print("Liste originale:", liste)
print("Compter", nbr, "dans la liste:",ctr)
Exercice 6:
Écrire un programme Python pour compter le nombre de sous-listes uniques dans une liste donnée.
Exemple:
Liste originale: [[1, 2], [4, 7], [1, 2], [11, 9, 12], [4, 7]]
Nombre de listes uniques de la liste:
{(1, 2): 2, (4, 7): 2, (11, 9, 12): 1}
Solution:
liste = [[1, 2], [4, 7], [1, 2], [11, 9, 12], [4, 7]]
# Créer un dictionnaire vide "result" pour stocker les sous-listes et leur nombre
result = {}
# Parcourir les sous-listes de "liste"
for l in liste:
# Utiliser une représentation en tuple de la sous-liste comme clé du
# dictionnaire 'result' et ajouter 1 à la liste associée à cette clé
result.setdefault(tuple(l), list()).append(1)
# Parcourir les éléments de "result" et remplacer la liste des nombres par leur somme
for a, b in result.items():
result[a] = sum(b)
print("Liste originale:", liste)
print("Nombre de listes uniques de la liste:",result)
Exercice 7:
Écrire un programme Python pour mélanger les lettres d’une chaîne de caractères dans une liste donnée.
Exemple:
Liste originale: ['Java', 'PHP', 'Python']
Après avoir brouillé les lettres: ['aJav', 'PPH', 'hPyotn']
Solution:
# Importer la fonction "shuffle" du module "random"
from random import shuffle
# Define a function 'shuffle_word' that shuffles the characters in a word
def melange_word(in_list):
# Convertir le mot saisi en une liste de caractères
in_list = list(in_list)
# Mélanger les caractères de la liste
shuffle(in_list)
# Convertit la liste mélangée en une chaîne de caractères et renvoyer-le
return ''.join(in_list)
liste = ['Java', 'PHP', 'Python']
print("Liste originale:", liste)
# Utiliser une liste de compréhension pour appliquer la fonction "melange_word" à chaque mot de "liste" et afficher le résultat
result = [melange_word(word) for word in liste]
print("Après avoir brouillé les lettres:", result)
Exercice 8:
Écrire un programme Python pour trouver les valeurs maximale et minimale d’une liste hétérogène donnée.
Exemple:
Liste originale: ['Java', 9, 5, 4, 3, 'PHP', 'Python']
Valeurs maximale et minimale de la liste: (9, 3)
Solution:
# Définir une fonction "max_min_val" qui trouve les valeurs maximales et minimales d'une liste
def max_min_val(in_list):
# Trouver les valeurs maximales et minimales des entiers dans 'in_list'
max_val = max(i for i in in_list if isinstance(i, int))
min_val = min(i for i in in_list if isinstance(i, int))
return (max_val, min_val)
# Créer une liste contenant un mélange de valeurs entières et non entières
liste = ['Java', 9, 5, 4, 3, 'PHP', 'Python']
print("Liste originale:", liste)
print("Valeurs maximale et minimale de la liste:", max_min_val(liste))
Exercice 9:
Écrire un programme Python qui trouve les éléments communs à un même index dans trois listes.
Exemple:
[1, 2, 3, 4, 5, 6, 8]
[0, 2, 1, 3, 4, 5, 8]
[0, 2, 1, 3, 4, 5, 8]
Index communs des éléments des listes est:
[2, 8]
Solution:
# Définir une fonction "extract_el" qui trouve les éléments communs au même index dans trois listes
def extract_el(l1, l2, l3):
result = []
# Utilisez la fonction "zip" pour parcourir les éléments ayant le même index dans les trois listes
for m, n, o in zip(l1, l2, l3):
# Si les éléments à l'index actuel dans les trois listes sont égaux, ils sont ajoutés au 'result'
if (m == n == o):
result.append(m)
return result
# Créer trois listes
liste1 = [1, 2, 3, 4, 5, 6, 8]
liste2 = [0, 2, 1, 3, 4, 5, 8]
liste3 = [0, 2, 1, 3, 4, 5, 8]
print(liste1)
print(liste2)
print(liste3)
print("Index communs des éléments des listes est:")
print(extract_el(liste1, liste2, liste3))
Exercice 10:
Écrire un programme Python pour trier une matrice donnée par ordre croissant selon la somme de ses lignes.
Exemple:
Matrice originale: [[1, 2, 3], [2, 4, 6], [1, 1, 1]]
Matrice triée par ordre croissant en fonction de la somme de ses lignes:
[[1, 1, 1], [1, 2, 3], [2, 4, 6]]
Solution:
# Définir une fonction qui trie une matrice par ordre croissant sur la base de la somme de ses lignes
def sort_matrix(M):
# Utilisez la fonction "sorted" pour trier la matrice "M" sur la base de la somme de chaque ligne
result = sorted(M, key=sum)
return result
# Créer une matrice
matrice = [[1, 2, 3], [2, 4, 6], [1, 1, 1]]
print("Matrice originale:",matrice)
print("Matrice triée par ordre croissant en fonction de la somme de ses lignes:")
print(sort_matrix(matrice))
Éditeur de code Python: Testez votre code en ligne!
QCM Python – Partie 1Questions pratiques pour testez vos connaissances sur la programmation Python à savoir des structures conditionnelles, des opérations logiques, des boucles, des fonctions, etc. Testez votre…Lire plus
print("Solution 1: ")
liste = [[1, 2], [3, 5], [1, 15], [1, 9, 7]]
nbr = 1
ctr = 0
print(f"Compter, {nbr} dans la liste: {len([j for i in liste for j in i if j == 1])}")
print("Solution 1: ")
liste = [[1, 2], [3, 5], [1, 15], [1, 9, 7]]
nbr = 1
ctr = 0
print(f"Compter, {nbr} dans la liste: {len([j for i in liste for j in i if j == 1])}")
liste = [[1, 2], [4, 7], [1, 2], [11, 9, 12], [4, 7]]
test=[]
result=dict()
for elemt in sorted(liste):
if elemt not in test:
result[tuple(elemt)] = liste.count(elemt)
test.append(elemt)
print(f''Liste originale: {liste}'')
print(f''Nombre de listes uniques de la liste {result}'')
liste = ['Java', 9, 5, 4, 3, 'PHP', 'Python']
result=[i for i in liste if isinstance(i, int)]
print(f'Valeurs maximale et minimale de la liste: {(max(result), min(result))}')
Autre solution possible exercice 1 Partie 6:
Autre solution possible exercice 3 Partie 6:
Exercice 4 Partie 6
Autre solution possible:
Exercice 5 parti 6
Une autre solution :
Exercice 5 parti 6
Une autre solution :
Autre solution possible:
Exercice8 Partie6
Autre solution possible: