Exercice Corrigé: Les listes en Python – Partie 9

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 supprimer les mots dupliqués d’une liste.

Exemple:

Liste originale: ['Java', 'PHP', 'PHP', 'Pytohn']
Après la suppression des mots dupliqués: ['Java', 'PHP', 'Pytohn']
Solution:

liste = ['Java', 'PHP', 'PHP', 'Pytohn']

print("Liste originale:",liste)

# Créer une liste vide "tmp" pour stocker les éléments uniques
tmp = []
    
# Parcourir les éléments de la liste "liste"
for x in liste:
    # Vérifier si l'élément "x" ne figure pas dans la liste "tmp" (c'est-à-dire s'il est unique)
    if x not in tmp:
        # Ajouter l'élément unique "x" à la liste "tmp"
        tmp.append(x)
    
# Afficher la liste des éléments uniques
print("Après la suppression des mots dupliqués:",tmp)
 

Exercice 2:

Écrire un programme Python pour trouver le premier nombre pair et impair dans une liste.

Exemple:

Liste originale: [1, 3, 5, 7, 4, 1, 6]
Premier nombre pair et impair de cette liste: (4, 1)
Solution:

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

print("Liste originale:",liste)

# Utiliser 'next' pour trouver le premier nombre pair, -1 par défaut si non trouvé
paire = next((i for i in liste if i % 2 == 0), -1)

# Utiliser 'next' pour trouver le premier nombre impair, -1 par défaut si non trouvé
impaire = next((i for i in liste if i % 2 != 0), -1)

print("Premier nombre pair et impair de cette liste:", (paire, impaire))
 

Exercice 3:

Écrivez un programme Python pour trier une liste mixte d’entiers et de chaînes de caractères. Les nombres doivent être triés avant les chaînes de caractères.

Exemple:

Liste originale: [8, 'Zoro', 9, 'Alex', 1]
Liste triée: [1, 8, 9, 'Alex', 'Zoro']
Solution:

liste = [8, 'Zoro', 9, 'Alex', 1]

print("Liste originale:",liste)

# Extraire et trier la partie entière de la liste
int_v = sorted([i for i in liste if type(i) is int])

# Extraire et trier la partie string de la liste
str_v = sorted([i for i in liste if type(i) is str])

# Combiner les entières et chaînes triées et afficher le résultat
print("Liste triée:", int_v + str_v)
 

Exercice 4:

Écrire un programme Python pour trier numériquement une liste donnée de chaînes de caractères (nombres).

Exemple:

Liste originale: ['8', '-15', '9', '0', '1']
Liste triée: [-15, 0, 1, 8, 9]
Solution:

liste = ['8', '-15', '9', '0', '1']

print("Liste originale:",liste)

# Convertir chaque chaîne numérique en un entier et stocker le résultat dans 'result'
result = [int(x) for x in liste]

# Trier la liste des résultats par ordre croissant
result.sort()
	
print("Liste triée:", result)
 

Exercice 5:

Écrire un programme Python pour supprimer les listes vides d’une liste de listes.

Exemple:

Liste originale: [[], "A", [], "B", [1, 2], []]
Après suppression des listes vides: ['A', 'B', [1, 2]]
Solution:

liste = [[], "A", [], "B", [1, 2], []]

print("Liste originale:",liste)

# Créer une nouvelle liste "result" contenant des éléments non vides de 'list1'
result = [x for x in liste if x]
	
print("Après suppression des listes vides:", result)
 

Exercice 6:

Écrire un programme Python pour additionner une colonne spécifique d’une liste dans une liste de listes.

Exemple:

Liste originale: [[1, 2, 3], [4, 5, 6], [5, 8, 9]]
Somme du 1ère colonne: 10
Solution:

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

# Définir l'indexe de la colonne à 0
c = 0

print("Liste originale:",liste)

# Calculer la somme de la colonne spécifiée 'c'
result = sum(row[c] for row in liste)
	
print("Somme du 1ère colonne:", result)
 

Exercice 7:

Écrire un programme Python pour extraire chaque premier élément ou chaque élément spécifié d’une liste de liste.

Exemple:

Liste originale: [[1, 2, 3], [4, 5, 6], [5, 8, 9]]
Extraire chaque premier élément: [1, 4, 5]
Extraire chaque troisième élément: [3, 6, 9]
Solution:

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

# Définir l'indexe de la colonne à 0
c = 0

print("Liste originale:",liste)

# Extraire l'élément à l'index 'c'
result = [row[c] for row in liste]
	
print("Extraire chaque premier élément:", result)
 

Exercice 8:

Écrire un programme Python pour générer un nombre dans une plage spécifiée, à l’exception de certains nombres spécifiques.

Exemple:

Générer un nombre entre (1, 10) à l'exception de [2, 9, 10]
5
Solution:

# Importer la fonction "choice" du module "random"
from random import choice

# Définir les plages de début et de fin
start = 1
end = 10
liste = [2, 9, 10]

# Generate a random number within the specified range, excluding numbers in the 'liste' list
result = choice([i for i in range(start, end) if i not in liste])
	
print("Générer un nombre entre (1, 10) à l'exception de [2, 9, 10]")
print(result)
 

Exercice 9:

Écrire un programme Python pour combiner deux listes en une autre liste de manière aléatoire.

Exemple:

Liste originale:
[1, 2, 4]
[5, 3, 8]
Résultat de incorporer deux listes dans une autre liste de manière aléatoire:
[5, 1, 3, 2, 8, 4]
Solution:

# Importer le module "random" pour générer des valeurs aléatoires
import random

liste1 = [1, 2, 4]
liste2 = [5, 3, 8]

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

# Créer une nouvelle liste en prenant des éléments dans 'liste1' et 'liste2'
# Les éléments de 'liste1' et 'liste2' sont imbriqués de manière aléatoire
result = [x.pop(0) for x in random.sample([liste1] * len(liste1) + [liste2] * len(liste2), len(liste1) + len(liste2))]

print("Résultat de incorporer deux listes dans une autre liste de manière aléatoire:")
print(result)
 

Exercice 10:

Écrire un programme Python pour supprimer des mots spécifiques d’une liste donnée.

Exemple:

Liste originale: ['vert', 'bleu', 'blanc', 'noir']
Supprimer les mots: ['blanc', 'vert']
Après avoir supprimé les mots spécifiés de la liste: ['bleu', 'noir']
Solution:

liste = ['vert', 'bleu', 'blanc', 'noir']
supp = ['blanc', 'vert']

print("Liste originale:",liste)

# Parcourir les éléments de la liste
for word in list(liste):
    # Vérifier si le mot figure dans la liste 'supp'
    if word in supp:
        # Si c'est le cas, supprimez le mot de la 'liste'
        liste.remove(word)

print("Après avoir supprimé les mots spécifiés de la liste:")
print(liste)
 

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


 

QCM Python

3 réflexions sur “Exercice Corrigé: Les listes en Python – Partie 9

  • janvier 27, 2025 à 5:10 pm
    Permalien

    Partie 9 exercice 1
    Autre solution possible:

    liste = ['Java', 'PHP', 'PHP', 'Pytohn']
    print(set(liste))
    Répondre
  • janvier 27, 2025 à 5:35 pm
    Permalien

    Partie 9 exercice 3
    Autre solution possible:

    liste = [8, 'Zoro', 9, 'Alex', 1]
    print([*sorted([i for i in liste if isinstance(i, int)]), *sorted([i for i in liste if isinstance(i, str)])])
    Répondre
  • janvier 27, 2025 à 5:43 pm
    Permalien

    partie 9 exercice 4
    Autre solution possible:

    liste = ['8', '-15', '9', '0', '1']
    print(sorted([int(i) for i in liste]))
    Répondre

Laisser un commentaire

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