Exercice Corrigé: Les listes en Python – Partie 11

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:

Écrire un programme Python pour concaténer par éléments trois listes données.

Exemple:

liste1 = ['0', '1', '2', '3']
liste2 = ['red', 'green', 'black', 'blue']
liste3 = ['100', '200', '300', '400']
Concaténer par éléments les trois listes:
['0red100', '1green200', '2black300', '3blue400']
Solution:

liste1 = ['0', '1', '2', '3']
liste2 = ['red', 'green', 'black', 'blue']
liste3 = ['100', '200', '300', '400']

# Utilisez une liste de compréhension avec 'zip' pour concaténer les éléments de chacune des listes d'entrée.
result = [i + j + k for i, j, k in zip(liste1, liste2, liste3)]

print("Concaténer par éléments les trois listes:")
print(result)
 

Exercice 2:

Écrire un programme Python pour supprimer les N derniers éléments d’une liste donnée.

Exemple:

Liste originale: [1, 2, 3, 4, 5, 6]
Supprimer les 3 derniers éléments de cette liste:
[1, 2, 3]
Solution:

liste = [1, 2, 3, 4, 5, 6]
N = 3

# Découpez la liste pour exclure les derniers "N" éléments et créez une nouvelle liste "result"
result = liste[:len(liste)-N]

print("Supprimer les 3 derniers éléments de cette liste:")
print(result)
 

Exercice 3:

Écrire un programme Python pour ajouter un nombre à chaque élément d’une liste de nombres donnée.

Exemple:

Liste originale: [3, 2, 1, 4]
Ajouter 3 à chaque élément de la liste:
[6, 5, 4, 7]
Solution:

liste = [3, 2, 1, 4]
N = 3

# Utilisez une liste de compréhension pour ajouter "N" à chaque élément de "result" et créer une nouvelle liste
result = [x + N for x in liste]

print("Ajouter 3 à chaque élément de la liste:")
print(result)
 

Exercice 4:

Écrire un programme Python pour convertir un nombre décimal donné en une liste binaire.

Exemple:

Nombre original: 8
Nombre décimal (8) vers une liste binaire: [1, 0, 0, 0]
Solution:

n = 8

# Convertir le nombre décimal "n" en une chaîne binaire, convertir chaque chiffre en un entier et le stocker dans une liste.
result = [int(x) for x in list('{0:0b}'.format(n))]

print("Nombre décimal (",n,") vers une liste binaire:", result)
 

Exercice 5:

Écrire un programme Python pour convertir une liste de tuples en une liste de chaînes de caractères.

Exemple:

Liste originale: [('A', 'B'), ('C', 'D'), ('E', 'F')]
Convertir cette liste de tuples en une liste de chaînes de caractères:
['A B', 'C D', 'E F']
Solution:

liste = [('A', 'B'), ('C', 'D'), ('E', 'F')]

print("Liste originale:",liste)

# Itère à travers chaque tuple 'el' dans la liste 'liste'.
# Convertit chaque élément du tuple en une chaîne de caractères en utilisant le spécificateur de format '%s', et les joint avec des espaces.
# Supprimer les espaces de fin en utilisant 'strip'.
result = [("%s " * len(el) % el).strip() for el in liste]

print("Convertir cette liste de tuples en une liste de chaînes de caractères:")
print(result)
 

Exercice 6:

Écrire un programme Python pour déplacer le dernier élément en première position et le premier élément en dernière position dans une liste.

Exemple:

Liste originale: [1, 2, 3, 4, 5, 6]
Déplacer le dernier élément en première position et le premier élément en dernière position de la liste:
[6, 2, 3, 4, 5, 1]
Solution:

liste = [1, 2, 3, 4, 5, 6]

print("Liste originale:",liste)

# Retirer le premier élément et le stocker dans "x"
x = liste.pop(0)
# Retirer le dernier élément et le stocker dans "y"
y = liste.pop()
# Insérer "y" en première position
liste.insert(0, y)
# Insérer "x" à la dernière position
liste.insert(len(liste), x)

print("Déplacer le dernier élément en première position et le premier élément en dernière position de la liste:")
print(liste)
 

Exercice 7:

Ecrivez un programme Python pour trouver les valeurs maximales et minimales des trois listes.

Exemple:

Liste originale: 
[2, 3, 5, 8, 7, 2]
[4, 3, 9, 0, 4, 3]
[2, 1, 5, 6, 5, 5]
Valeur maximale de ces trois listes: 9
Valeur minimale de ces trois listes: 0
Solution:

liste1 = [2, 3, 5, 8, 7, 2]
liste2 = [4, 3, 9, 0, 4, 3]
liste3 = [2, 1, 5, 6, 5, 5]

print("Liste originale:")
print(liste1)
print(liste2)
print(liste3)

max_v = max(liste1 + liste2 + liste3)
min_v = min(liste1 + liste2 + liste3)

print("Valeur maximale de ces trois listes:",max_v)
print("Valeur minimale de ces trois listes:",min_v)
 

Exercice 8:

Écrire un programme Python pour supprimer toutes les chaînes de caractères d’une liste de tuples.

Exemple:

Liste originale: [(200, 'Java'), (80, 'Python'), (90, 'C', 92)]
Supprimer toutes les chaînes de caractères:
[(200,), (80,), (90, 92)]
Solution:

liste = [(200, 'Java'), (80, 'Python'), (90, 'C', 92)]

print("Liste originale:")
print(liste)

# Créer une liste de compréhension qui traite chaque tuple de la liste.
# Dans chaque tuple, créer un nouveau tuple qui contient des valeurs qui ne sont pas des chaînes.
result = [tuple(v for v in i if not isinstance(v, str)) for i in liste]

print("Supprimer toutes les chaînes de caractères:")
print(list(result))
 

Exercice 9:

Ecrivez un programme Python pour trouver la dimension d’une matrice donnée.

Exemple:

Liste originale: [[1, 2], [2, 3]]
Dimension de la matrice: (2, 2)
Solution:

liste = [[1, 2], [2, 3]]

print("Liste originale:",liste)

# Calculer le nombre de lignes en trouvant la longueur de la liste.
row = len(liste)
# Calculez le nombre de colonnes en trouvant la longueur de la première sous-liste (en supposant que toutes les sous-liste ont la même longueur).
column = len(liste[0])

print("Dimension de la matrice:",(row, column))
 

Exercice 10:

Écrire un programme Python pour parcourir une liste dans l’ordre inverse.

Exemple:

Liste originale: ['rouge', 'vert', 'blanc', 'noir']
Parcourt la liste dans l'ordre inverse:
noir
blanc
vert
rouge
Solution:

liste = ['rouge', 'vert', 'blanc', 'noir']

print("Liste originale:",liste)

# Utiliser la fonction 'reversed' pour itérer sur la liste dans l'ordre inverse.
# 'i' représente chaque élément de la liste dans l'ordre inverse.
for i in reversed(liste):
    print(i)
 

Éditeur de code Python: Testez votre code en ligne!


 

QCM Python

6 réflexions sur “Exercice Corrigé: Les listes en Python – Partie 11

  • janvier 31, 2025 à 9:27 am
    Permalien

    Exercice 4 Partie 11
    Autre solution possible

    n = 8
    print(list(map(int, list(format(n,'02b')))))
    Répondre
  • janvier 31, 2025 à 12:02 pm
    Permalien

    Exercice 5 Partie 11
    Autre Solutions possibles

    liste = [('A', 'B'), ('C', 'D'), ('E', 'F')]
    print([elemt[0]+ ' '+ elemt[1] for elemt in list(liste)])
    # or
    print([' '.join(elemt) for elemt in list(liste)]) # <- better solution as this is quicker
    Répondre
  • janvier 31, 2025 à 1:51 pm
    Permalien

    Exercice 6 Partie 11
    Autre Solution possible:

    liste=[1, 2, 3, 4, 5, 6]
    b, a = liste[0], liste[-1]
    liste[0], liste[-1] = a, b
    print(liste)
    Répondre
  • janvier 31, 2025 à 2:09 pm
    Permalien

    exercice 7 Partie 11
    Autre Solution possible:

    liste1=[2, 3, 5, 8, 7, 2]
    liste2=[4, 3, 9, 0, 4, 3]
    liste3=[2, 1, 5, 6, 5, 5]
    print(f"Valeur maximale de ces trois listes: {max(max(max(liste1), max(liste2)), max(liste3))}")
    print(f"Valeur minimale de ces trois listes: {min(min(min(liste1), min(liste2)), min(liste3))}")
    # Cette solution est un peu plus rapide que la solution proposée en correction.
    Répondre
  • janvier 31, 2025 à 8:48 pm
    Permalien

    Exercice9 Partie11
    Autre solution possible:

    import numpy as np
    liste_np = np.array([[1, 2], [2, 3]])
    print(np.shape(liste_np))
    Répondre
  • janvier 31, 2025 à 8:54 pm
    Permalien

    Exercice10 Partie11
    Autre solution possible:

    liste = ['rouge', 'vert', 'blanc', 'noir']
    print("\n".join(liste[::-1]))
    # Les chevrons doivent être remplacés par des guillemets
    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *