Opérations sur les chaînes de caractères

8.1 Opérations sur les chaînes de caractères

Objectifs d'apprentissage

À la fin de cette section, vous devriez être en mesure de :

  • Comparer des chaînes de caractères à l'aide d'opérateurs logiques et d'appartenance.
  • Utiliser les méthodes de chaîne lower() et upper() pour convertir les valeurs de chaîne en caractères minuscules et majuscules.

Comparaison de chaînes de caractères

Les valeurs de chaînes peuvent être comparées à l'aide d'opérateurs logiques (<, <=, >, >=, ==, !=) et d'opérateurs d'appartenance (in et not in). Lors de la comparaison de deux valeurs de chaînes, les caractères correspondants des deux valeurs sont comparés séquentiellement jusqu'à ce qu'une décision soit prise. Pour comparer deux caractères, les valeurs ASCII sont utilisées pour appliquer les opérateurs logiques.

Opérateur Description Exemple Sortie Explication

> ou >=

Vérifie si la première valeur de chaîne est supérieure (ou supérieure ou égale) à la seconde.

"c" > "d"

False

Lors de la comparaison de l'opérande "c" avec l'opérande "d", la valeur ASCII de "c" est inférieure à la valeur ASCII de "d". Par conséquent, "c" < "d". L'expression "c" > "d" s'évalue à False.

< ou <=

Vérifie si la première valeur de chaîne est inférieure (ou inférieure ou égale) à la seconde.

"ab" < "ac"

True

Lors de la comparaison de l'opérande "ab" avec l'opérande "ac", les premiers caractères sont identiques, mais le deuxième caractère de "ab" est inférieur au deuxième caractère de "ac", et ainsi "ab" < "ac".

==

Vérifie si deux valeurs de chaînes sont égales.

"aa" == "aa"

True

Puisque tous les caractères du premier opérande et du second opérande sont identiques, les deux valeurs de chaînes sont égales.

!=

Vérifie si deux valeurs de chaînes ne sont pas égales.

"a" != "b"

True

Les deux opérandes contiennent des valeurs de chaînes différentes ("a" par rapport à "b"), et le résultat de la vérification indiquant qu'elles ne sont pas identiques s'évalue à True.

in

Vérifie si le second opérande contient le premier opérande.

"a" in "bc"

False

Puisque la chaîne "bc" ne contient pas la chaîne "a", la sortie de "a" in "bc" s'évalue à False.

not in

Vérifie si le second opérande ne contient pas le premier opérande.

"a" not in "bc"

True

Puisque la chaîne "bc" ne contient pas la chaîne "a", la sortie de "a" not in "bc" s'évalue à True.

Tableau 8.1 Comparaison de valeurs de chaînes de caractères.

Concepts en pratique

Utilisation des opérateurs logiques et d'appartenance pour comparer des valeurs de chaînes

1.
Quelle est la sortie de ("aaa" < "aab") ?
  1. True
  2. False
2.
Quelle est la sortie de ("aa" < "a") ?
  1. True
  2. False
3.
Quelle est la sortie de ("aples" in "apples") ?
  1. undefined
  2. True
  3. False

lower() et upper()

Python propose de nombreuses méthodes utiles pour modifier les chaînes de caractères, dont les méthodes lower() et upper(). La méthode lower() renvoie les caractères alphabétiques convertis en minuscules, et la méthode upper() renvoie les caractères alphabétiques convertis en majuscules. Les méthodes lower() et upper() ne modifient pas la chaîne de caractères.

Exemple 8.1

Conversion de caractères dans une chaîne

Dans l'exemple ci-dessous, les méthodes de chaîne lower() et upper() sont appelées sur la variable de chaîne x pour convertir tous les caractères en minuscules et en majuscules, respectivement.

    x = "Apples"

    # The lower() method converts a string to all lowercase characters
    print(x.lower())

    # The upper() method converts a string to all uppercase characters
    print(x.upper())

La sortie du code ci-dessus est :

    apples
    APPLES

Concepts en pratique

Utilisation de lower() et upper()

4.
Quelle est la sortie de "aBbA".lower() ?
  1. abba
  2. ABBA
  3. abbA
5.
Quelle est la sortie de "aBbA".upper() ?
  1. abba
  2. ABBA
  3. ABbA
  4. aBBA
6.
Quelle est la sortie de ("a".upper() == "A") ?
  1. True
  2. False

À vous d'essayer

Nombre de caractères dans la chaîne

Une variable de chaîne, s_input, est définie. Utilisez lower() et upper() pour convertir la chaîne en minuscules et en majuscules, et affichez les résultats dans la sortie. Affichez également le nombre de caractères de la chaîne, y compris les espaces.

À vous d'essayer

Quel est mon caractère ?

Soit la chaîne s_input, qui est un objet chaîne d'un seul caractère. Si le caractère est compris entre "a" et "t" ou entre "A" et "T", affichez True. Sinon, affichez False.
Indication : vous pouvez convertir s_input en minuscules et vérifier si s_input est compris entre "a" et "t".