Exercice Corrigé: Les chaînes de caractères en Python – Partie 3

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 inverser les mots d’une chaîne de caractères.

Exemple:

Exemple de chaîne: 'Welcome to WayToLearnX'
Résultat: WayToLearnX to Welcome
Solution:

str = 'Welcome to WayToLearnX'

for line in str.split('\n'):
    result = (' '.join(line.split()[::-1]))

print(result)
 

Exercice 2:

Écrire un programme Python pour supprimer un ensemble de caractères d’une chaîne de caractères.

Exemple:

Exemple de chaîne: 'Welcome to WayToLearnX'
Après suppression de a,e,i,o,u 
Wlcm t WyTLrnX
Solution:

str = 'Welcome to WayToLearnX'
chars = 'aeiou'

result = "".join(c for c in str if c not in chars)

print('Après suppression de a,e,i,o,u')
print(result)
 

Exercice 3:

Écrire un programme Python pour compter les caractères répétés dans une chaîne de caractères.

Exemple:

Exemple de chaîne: 'Welcome to WayToLearnX'

Résultat:
e 3
o 3
W 2
  2
a 2
Solution:

# Importez le module collections pour utiliser la classe defaultdict.
import collections

# Définir une chaîne de caractères.
str = 'Welcome to WayToLearnX'

# Créer un dictionnaire par défaut 'd' avec des valeurs entières comme type par défaut.
d = collections.defaultdict(int)

# Parcourir chaque caractère de la chaîne de caractères 'str'.
# Mettre à jour le compteur de chaque caractère dans le dictionnaire 'd'.
for c in str:
    d[c] += 1

# Itère à travers les caractères dans 'd' dans l'ordre décroissant de leur nombre.
for c in sorted(d, key=d.get, reverse=True):
    # Vérifier si le caractère apparaît plus d'une fois.
    if d[c] > 1:
        # Afficher le caractère et son nombre.
        print('%s %d' % (c, d[c])) 
 

Exercice 4:

Ecrivez un programme Python pour afficher les symboles du carré et du cube de la surface d’un rectangle et du volume d’un cylindre.

Exemple:

La surface du rectangle est de 1256,66cm2
Le volume du cylindre est de 211.258cm3
Solution:

surface = 653.968
volume = 211.258

# Définir le nombre de décimales pour le formatage.
decimals = 2

print("La surface du rectangle est de {0:.{1}f}cm\u00b2".format(surface, decimals))

# Mise à jour du nombre de décimales pour le formatage.
decimals = 3

print("Le volume du cylindre est de {0:.{1}f}cm\u00b3".format(volume, decimals))
 

Exercice 5:

Écrire un programme Python pour afficher l’index d’un caractère dans une chaîne de caractères.

Exemple:

Exemple de chaîne: 'Alex'

Résultat:
Caractère A position à 0
Caractère l position à 1
Caractère e position à 2
Caractère x position à 3
Solution:

str = "Alex"

# parcourir les caractères de la chaîne à l'aide d'une énumération.
# 'index' contient la position du caractère, et 'char' contient le caractère lui-même.
for index, char in enumerate(str):
    # Affiche le caractère courant, sa position et un message descriptif.
    print("Caractère", char, "position à", index)
 

Exercice 6:

Écrire un programme Python pour convertir une chaîne donnée en une liste de mots.

Exemple:

Exemple de chaîne: 'Welcome to WayToLearnX'

Résultat:
['Welcome', 'to', 'WayToLearnX']
Solution:

str = "Welcome to WayToLearnX"

# Découper la chaîne en une liste de mots en utilisant l'espace comme séparateur et afficher le résultat.
print(str.split(' '))
 

Exercice 7:

Écrire un programme Python pour mettre en minuscules les 4 premiers caractères d’une chaîne.

Exemple:

Exemple de chaîne: 'WAYTOLEARNX'

Résultat: waytOLEARNX
Solution:

str = "WAYTOLEARNX"

# Convertir les quatre premiers caractères de la chaîne en minuscules et les concaténer avec les caractères restants.
# Afficher la chaîne de caractères modifiée.
print(str[:4].lower() + str[4:])
 

Exercice 8:

Écrire un programme Python pour permuter les virgules et les points dans une chaîne de caractères.

Exemple:

Exemple de chaîne: '56.122,98'

Résultat: '56,122.98'
Solution:

str = '56.122,98'

# Créez une variable 'maketrans' qui fait référence à la méthode 'maketrans' de la chaîne 'str'.
maketrans = str.maketrans

# Traduire (remplacer) les caractères ',' par '.', et '.' par ',' dans la chaîne 'str' en utilisant la variable 'maketrans'.
str = str.translate(maketrans(',.', '.,'))

# Afficher la chaîne 'str' modifiée avec les caractères décimaux et les virgules échangés.
print(str) 
 

Exercice 9:

Écrire un programme Python pour compter et afficher les voyelles dans un texte.

Exemple:

Exemple de chaîne: 'waytolearnx'

Résultat: 
4
['a', 'o', 'e', 'a']
Solution:

str = 'waytolearnx'

# Définir une chaîne 'vowels' contenant toutes les voyelles minuscules et majuscules.
vowels = "aeiuoAEIOU"

# Affiche le nombre de voyelles dans la chaîne str en utilisant une liste de compréhension.
print(len([letter for letter in str if letter in vowels]))

# Affiche une liste de voyelles trouvées dans la chaîne str à l'aide d'une liste de compréhension.
print([letter for letter in str if letter in vowels])
 

Exercice 10:

Écrire un programme Python pour trouver le premier caractère répété dans une chaîne donnée.

Exemple:

Exemple de chaîne: 'xyzxyz'

Résultat: x
Solution:

# Définir une fonction qui prend une chaîne de caractères en entrée.
def get_first_repeated(str):
    # Parcourir chaque caractère 'c' et son index 'index' dans la chaîne 'str'.
    for index, c in enumerate(str):
        # Vérifier si le nombre de caractères 'c' dans la sous-chaîne de 'str' jusqu'à 'index+1' est supérieur à 1.
        if str[:index + 1].count(c) > 1:
            return c  # Renvoie le premier caractère répété trouvé.
    return "None"  # si aucun caractère répété n'est trouvé.

# Appeler la fonction avec différentes entrées.
print(get_first_repeated("xyzxyz"))
print(get_first_repeated("xyz")) 

Sortie:

x
None
 

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


 

QCM Python

2 réflexions sur “Exercice Corrigé: Les chaînes de caractères en Python – Partie 3

  • novembre 29, 2024 à 5:12 pm
    Permalien

    Bonjour,
    Dans Exercice Corrigé : Les chaînes de caractères en Python – Partie 3, exerice3:
    La solution proposée ne retourne pas le résultat attendu dans l’énoncé :
    énoncé:
    Résultat:
    e 3
    o 3
    W 2
    2
    a 2

    Résultat du script proposé en correction:
    (‘e’, 3)
    (‘o’, 3)
    (‘W’, 2)
    (‘ ‘, 2)
    (‘a’, 2)

    Voici une proposition de solution qui donne le résultat attendu dan l’énoncé de l’exercice:

    result=dict()
    str='Welcome to WayToLearnX'
    def countcar(str, car)->int:
        return str.count(car)
    
    for letter in str:
        result[letter]=countcar(str, letter)
    
    result = [(letter, result[letter]) for letter in sorted(result, key=result.get, reverse=True)]
    
    for element in result:
        print(*element)
    Répondre
    • décembre 27, 2024 à 7:18 pm
      Permalien

      Merci pour cette remarque.

      Répondre

Laisser un commentaire

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