CM1 - Struct 2

Mutabilité en Python

  • La mutabilité fait référence à la capacité de modifier la valeur d'une variable. Certaines séquences sont mutables (modifiable) tandis que d'autres ne le sont pas. Cependant, toutes les séquences sont indexées, ce qui signifie qu'elles peuvent être gérées comme des tableaux.

Sequences Indexées

  • Chaînes de caractères : Par exemple, dans la chaîne "tapis", l'index 0 correspond à 't'. On peut également utiliser un index négatif ; par exemple, -1 correspond à 's', le dernier élément.

  • Slicing (Découpage) : On peut extraire des parties de la séquence avec des indices. Par exemple, pour une chaîne, a[2:4] renvoie le troisième caractère sans inclure le quatrième.

  • Le pas (step) par défaut est 1, mais on peut lui assigner une autre valeur pour sauter des éléments.

Fonctions Natives en Python

  • Python propose des fonctions natives utiles comme in, len(), et des opérateurs pour la concaténation. En pseudo code, certaines de ces fonctionnalités doivent être programmées manuellement.

Opérateurs sur les Séquences

  • Accès aux éléments : L'opérateur d'indexation s[i] récupère l'élément à l'index i. Par exemple, s[1:3] renvoie les éléments de l'index 1 à 2 (excluant 3) et s * n répète la séquence n fois.

  • Appartenance : element in s renvoie vrai si l'élément fait partie de la séquence, sinon faux. Cela simplifie la vérification d'éléments dans des textes ou des listes.

Exemples d'Utilisation

  • Extraction d'une Sous-Séquence : mot[2:7] renvoie les caractères de l'index 2 à 6. L'utilisation des indices négatifs fonctionne de la même manière mais commence par la fin.

  • Tranche avec Pas : Un slice mot[m:n:p] utilise m comme point de départ, n comme point d'arrivée et p comme pas. Un pas négatif permet d'extraire dans l'autre direction.

Instructions de Boucle en Python

  • Utiliser une boucle for pour parcourir les séquences. On peut utiliser range(len(s)) pour obtenir tous les indices, ce qui est proche de la structure en pseudo code.

  • L'itération avec for element in s est plus pythonique et préférable selon les usages.

Mutabilité des Chaînes

  • Les chaînes de caractères ne sont pas mutables, ce qui signifie qu'on ne peut pas changer directement un caractère d'une chaîne. Pour créer une nouvelle chaîne, il faut concater des segments en utilisant message = 'C' + message[1:].

Utilisation des Voyageurs

  • Un code exemple pour compter les voyelles dans un texte peut être réalisé avec une boucle while ou for, en incrémentant un compteur lorsque chaque caractère est testé contre un ensemble de voyelles.

  • La combinaison de méthodes permet une programmation plus concise et efficace, mais ces approches dépendent des capacités de Python, non applicables aux langages de pseudo code.