Dans cet exercice, nous allons mélanger les lettres d'un mot grâce au module random.

Le mot résultant devra commencer par une majuscule.

Dans cet exercice nous allons mélanger le mot 'Bonjour'.

Votre script devra mélanger les lettres de ce mot pour donner par exemple : 'Ojnoubr' et assigner cette chaîne de caractères dans la variable resultat.

Afficher l'aide

La fonction shuffle du module random permet de mélanger les éléments d'une liste de façon aléatoire.

Code

import random

mot = "Bonjour"
mot = list(mot)

random.shuffle(mot)

resultat = "".join(mot).capitalize()

Explications

Pour facilement mélanger les lettres d'un mot, nous allons utiliser le module random et la fonction shuffle.

La fonction shuffle fonctionne sur des listes et permet de mélanger les éléments de la liste qui lui est passée.

Nous allons donc commencer par convertir notre mot en liste avec la fonction list :

mot = list(mot)

Nous utilisons ensuite la fonction shuffle du module random pour mélanger la liste :

random.shuffle(mot)

Il ne reste plus qu'à rassembler tous les éléments de la liste avec la méthode join et de remettre la majuscule à la bonne place avec la méthode capitalize :

mot_random = "".join(mot).capitalize()

Points importants à retenir

  • Pour mélanger les éléments d'une liste, on utilise la fonction shuffle du module random.

  • Pour convertir une chaîne de caractères en liste, on utilise la fonction list.

mot = "Bonjour"
import random

mot = "Bonjour"
mot = list(mot)

random.shuffle(mot)

resultat = "".join(mot).capitalize()

Console

Un instant...
terminal

Résultats

/ 2 tests validés

Test de la variable resultat

assert len(resultat) == 7, "La variable resultat ne contient que {} caractères.".format(len(resultat))

for i in resultat.lower():
    assert i in ["b", "o", "n", "j", "o", "u", "r"], "La variable resultat ne contient pas les bonnes lettres."

        

Test de la majuscule sur le premier caractère

assert resultat[0] in ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'], "La première lettre du mot doit être en majuscule."

        

Bravo, tu as réussi cet exercice de code 🥳

🚀

Envoyer ma solution

Vous avez trouvé une solution alternative pour cet exercice ? Proposez votre solution à la communauté 👇

Seules les propositions différentes de la solution proposée par Docstring peuvent être envoyées.

Ma solution :

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.