Maison >développement back-end >Tutoriel Python >Méthodes de chaîne Python, avec des exemples

Méthodes de chaîne Python, avec des exemples

Joseph Gordon-Levitt
Joseph Gordon-Levittoriginal
2025-02-15 11:47:12755parcourir

Python String Methods, with Examples

Explication détaillée de la méthode de chaîne Python: traitement efficace des données de texte

Python fournit une méthode de chaîne riche pour gérer les objets de chaîne tels que la mise en forme, la recherche et la modification sans modifier la chaîne d'origine car les chaînes sont immuables. Cet article présentera certaines méthodes de chaîne Python couramment utilisées et les expliquera en combinaison avec des exemples.

Caractéristiques des chaînes

Les stands font partie intégrante des langages de programmation et l'un des types de données les plus couramment utilisés dans Python. Ce sont des séquences de caractères Unicode immuables qui peuvent être enfermés dans des guillemets simples, doubles ou triples. L'immuabilité signifie qu'une fois une chaîne créée, il ne peut pas être modifié directement; toute opération de modification créera un nouvel objet de chaîne.

Exemple de chaîne en python:

<code class="language-python">greeting = "Hello, World!"</code>

Remarque: Contrairement à Java ou à d'autres langages de programmation, Python ne prend pas en charge les types de données de caractère. Ainsi, un seul caractère enfermé en citations, comme «C», est toujours une chaîne.

Présentation des méthodes de chaîne

Étant donné que les chaînes sont traitées comme des séquences de Python, elles implémentent toutes les opérations de séquence telles que les jointures, les tranches, etc.:

<code class="language-python">>>> word = 'golden'
>>> len(word)
6
>>> word + 'age'
'goldenage'
>>> 'la' * 3
'lalala'
>>></code>

En plus des opérations de séquence, il existe de nombreuses autres méthodes supplémentaires liées aux objets de chaîne. Ces méthodes peuvent être utilisées pour formater les chaînes, rechercher des sous-chaînes dans une autre chaîne, couper les espaces, effectuer certaines vérifications sur une chaîne donnée, etc.

Il convient de noter que ces méthodes de chaîne ne modifient pas la chaîne d'origine; car les chaînes sont immuables en python, les chaînes ne peuvent pas être modifiées directement. La plupart des méthodes de chaîne ne renvoient que des copies de chaîne modifiées ou des valeurs booléennes.

Ce qui suit est une introduction détaillée à certaines méthodes de chaîne Python, accompagnées d'exemples.

Méthode pour renvoyer une copie modifiée de la chaîne

  • str.capitalize() : convertit le premier caractère de la chaîne en majuscule et le reste en minuscules.

    Exemple:

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • str.center(width[, fillchar]) : Renvoie une chaîne centrée, remplie des fillchar et width donnés. Si width est inférieur ou égal à la longueur de chaîne, la chaîne d'origine est renvoyée.

    Exemple:

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • str.encode(encoding='utf-8', errors='strict') : Renvoie une chaîne codée sous forme d'octets.

    Par défaut, la chaîne transmise à la fonction est codée en tant que UTF-8, et si une erreur se produit, une exception UnicodeEncodeError sera soulevée. Le paramètre de mot-clé errors spécifie comment gérer les erreurs, telles que strict lance une exception, ignore ignore toutes les erreurs rencontrées, etc. Il existe quelques autres options de codage disponibles.

    Exemple:

    <code class="language-python">greeting = "Hello, World!"</code>
  • * `str.format ( args, kwargs)` : renvoie une copie de la chaîne dans laquelle chaque champ de substitution est remplacé par la valeur de chaîne du paramètre correspondant.

    Exemple:

    <code class="language-python">>>> word = 'golden'
    >>> len(word)
    6
    >>> word + 'age'
    'goldenage'
    >>> 'la' * 3
    'lalala'
    >>></code>
  • str.lower() : Convertissez tous les caractères majuscules dans une chaîne en minuscules.

    Exemple:

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • str.removeprefix(prefix, /) : Supprime le préfixe spécifié au début de la chaîne et renvoie la chaîne d'origine si le préfixe ne peut être trouvé.

    Exemple:

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • str.removesuffix(suffix, /) : supprime le suffixe spécifié à la fin de la chaîne et renvoie la chaîne d'origine si le suffixe ne peut être trouvé.

    Exemple:

    <code class="language-python">>>> sentence = "i Enjoy traveling. Do you, 山本さん?"
    >>> sentence.encode()
    b'i Enjoy traveling. Do you, \xe5\xb1\xb1\xe6\x9c\xac\xe3\x81\x95\xe3\x82\x93?'
    >>> sentence.encode(encoding='ascii')
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 27-30: ordinal not in range(128)
    >>> sentence.encode(encoding='ascii', errors='replace')
    b'i Enjoy traveling. Do you, ?????'</module></stdin></code>
  • str.replace(old, new[, count]) : Remplacez toutes les sous-chaînes qui apparaissent dans la chaîne par old. Si le paramètre new est fourni, seuls les sous-chaînes d'occurrence count sont remplacées. count

    Exemple:

    <code class="language-python">>>> "I bought {0} apples and the cost {1:.2f} Ghana cedis.".format(2, 18.70)
    'I bought 2 apples and the cost 18.70 Ghana cedis.'
    >>> "My name is {first_name}, and I'm a {profession}.".format(first_name='Ben', profession='doctor')
    "My name is Ben, and I'm a doctor."
    >>></code>
  • str.strip([chars]): Renvoie une nouvelle chaîne où les caractères spécifiés au début et à la fin de la chaîne d'origine ont été supprimés. Si le paramètre n'est pas fourni, les espaces sont supprimés par défaut. chars

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.lower()
    'i enjoy traveling. do you?'
    >>></code>
  • str.title(): Capitalise la première lettre de chaque mot dans la chaîne et minuscules le reste des lettres.

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removeprefix('i')
    ' Enjoy traveling. Do you?'
    >>></code>
  • str.upper(): Convertissez tous les caractères d'une chaîne en majuscules.

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removesuffix('Do you?')
    'i Enjoy traveling. '
    >>></code>

Méthodes pour concaténer et diviser les chaînes

  • str.join(iterable): Concaténez la chaîne dans l'objet itérable en une nouvelle chaîne. Si l'objet itérable contient des valeurs non corrigées, une exception est lancée. TypeError

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.replace('Enjoy','dislike')
    'i dislike traveling. Do you?'
    >>> 'Things fall apart'.replace('a','e',1)
    'Things fell apart'
    >>></code>
  • str.split(sep=None, maxsplit=-1): Divisez la chaîne en une liste en fonction du séparateur spécifié.

    Exemple:

    <code class="language-python">>>> word1 = ' whitespace '.strip()
    >>> word1
    'whitespace'
    >>> word2 = 'exercise'.strip('e')
    >>> word2
    'xercis'
    >>> word3 = 'chimpanze'.strip('acepnz')
    >>> word3
    'him'
    >>></code>

comment interroger les chaînes

  • str.count(sub[, start[, end]]): Renvoie le nombre de fois que la sous-chaîne apparaît dans la chaîne. sub

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.title()
    'I Enjoy Traveling. Do You?'
    >>></code>
  • str.find(sub[, start[, end]]): Renvoie l'index de l'emplacement où la sous-chaîne apparaît pour la première fois dans la chaîne. Si la sous-chaîne n'est pas trouvée, retournez -1. sub

    Exemple:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.upper()
    'I ENJOY TRAVELING. DO YOU?'
    >>></code>
  • str.index(sub[, start[, end]]): Renvoie l'index de l'emplacement où la sous-chaîne apparaît pour la première fois dans la chaîne. Si la sous-chaîne n'est pas trouvée, une exception sub est lancée. ValueError

    Exemple:

    <code class="language-python">>>> words = ["Accra", "is", "a", "beautiful", "city"]
    >>> ' '.join(words)
    'Accra is a beautiful city'
    >>> names = ['Abe', 'Fred', 'Bryan']
    >>> '-'.join(names)
    'Abe-Fred-Bryan'
    >>></code>

Méthodes pour renvoyer les valeurs booléennes

  • str.endswith(suffix[, start[, end]]) : Renvoie suffix Si la chaîne se termine avec le True spécifié; False

    Exemple:

    <code class="language-python">greeting = "Hello, World!"</code>
  • str.isalnum(): Renvoie si la chaîne contient des caractères alphanumériques et a au moins un caractère; True False Exemple:

    <code class="language-python">>>> word = 'golden'
    >>> len(word)
    6
    >>> word + 'age'
    'goldenage'
    >>> 'la' * 3
    'lalala'
    >>></code>
  • : Renvoie str.isalpha() Si tous les caractères dans une chaîne sont des lettres et ont au moins un caractère; True Exemple: False

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • : Renvoie si tous les caractères de la chaîne sont des caractères ASCII ou que la chaîne est vide; str.isascii() Exemple: True False

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • : Renvoie

    si la chaîne contient tous les caractères décimaux et a au moins un caractère; str.isdecimal() Exemple: True False

    <code class="language-python">>>> sentence = "i Enjoy traveling. Do you, 山本さん?"
    >>> sentence.encode()
    b'i Enjoy traveling. Do you, \xe5\xb1\xb1\xe6\x9c\xac\xe3\x81\x95\xe3\x82\x93?'
    >>> sentence.encode(encoding='ascii')
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 27-30: ordinal not in range(128)
    >>> sentence.encode(encoding='ascii', errors='replace')
    b'i Enjoy traveling. Do you, ?????'</module></stdin></code>
  • : Renvoie
  • si la chaîne contient tous les caractères numériques et a au moins un caractère;

    Exemple: str.isnumeric() True False

    <code class="language-python">>>> "I bought {0} apples and the cost {1:.2f} Ghana cedis.".format(2, 18.70)
    'I bought 2 apples and the cost 18.70 Ghana cedis.'
    >>> "My name is {first_name}, and I'm a {profession}.".format(first_name='Ben', profession='doctor')
    "My name is Ben, and I'm a doctor."
    >>></code>
    : Renvoie
  • Si tous les caractères dans une chaîne sont en minuscules et ont au moins un caractère;
  • Exemple: str.islower() True False

    : Renvoie
    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.lower()
    'i enjoy traveling. do you?'
    >>></code>
    si tous les caractères d'une chaîne sont capitalisés et ont au moins un caractère;
  • Exemple:

    str.isupper() True False

    : Renvoie

    si la chaîne commence par le
    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removeprefix('i')
    ' Enjoy traveling. Do you?'
    >>></code>
    spécifié;
  • Exemple:

    str.startswith(prefix[, start[, end]]) prefix True Méthode d'octet (bytes.decode ()) False

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removesuffix('Do you?')
    'i Enjoy traveling. '
    >>></code>

: décoder les octets en une chaîne. Par défaut, le codage est «UTF-8», et si une erreur se produit, une exception

sera soulevée.
    ,
  • et

    sont des paramètres de mot-clé d'erreur qui spécifient comment les exceptions sont gérées. bytes.decode(encoding='utf-8', errors='strict') Exemple:

    UnicodeDecodeError strict ignore Résumé replace

    La maîtrise des méthodes de chaîne Python est essentielle pour un traitement efficace des données de texte. Python fournit une multitude d'outils pour effectuer facilement une manipulation de cordes et améliorer l'efficacité de la programmation.

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.replace('Enjoy','dislike')
    'i dislike traveling. Do you?'
    >>> 'Things fall apart'.replace('a','e',1)
    'Things fell apart'
    >>></code>
  • Challenge

Essayez de prédire la sortie du code suivant:

Vous pouvez exécuter du code dans un environnement interactif Python pour vérifier votre réponse.

(La partie FAQ est omise car elle est trop longue et ne correspond pas à l'objectif pseudo-original. Le contenu FAQ peut être ajouté ailleurs au besoin.)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn