Méthodes de chaîne Python expliquées avec des exemples

Méthode de recherche de chaîne

Il existe deux options pour rechercher une sous-chaîne dans une chaîne en Python, find()et rfind().

Chacun renverra la position à laquelle se trouve la sous-chaîne. La différence entre les deux est que find()renvoie la position la plus basse et rfind()la position la plus élevée.

Des arguments de début et de fin facultatifs peuvent être fournis pour limiter la recherche de la sous-chaîne à certaines parties de la chaîne.

Exemple:

>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!" >>> string.find('you') 6 >>> string.rfind('you') 42

Si la sous-chaîne n'est pas trouvée, -1 est renvoyé.

>>> string = "Don't you call me a mindless philosopher, you overweight glob of grease!" >>> string.find('you', 43) # find 'you' in string anywhere from position 43 to the end of the string -1

Plus d'information:

Documentation des méthodes de chaîne.

Méthode de jointure de chaîne

La str.join(iterable)méthode est utilisée pour joindre tous les éléments dans un iterableavec une chaîne spécifiée str. Si l'itérable contient des valeurs non-chaîne, il déclenche une exception TypeError.

iterable: Tous les itérables de chaîne. Pourrait une liste de chaînes, un tuple de chaîne ou même une chaîne simple.

Exemples

Rejoignez une liste de chaînes avec ":"

print ":".join(["freeCodeCamp", "is", "fun"])

Production

freeCodeCamp:is:fun

Joindre un tuple de chaînes avec " and "

print " and ".join(["A", "B", "C"])

Production

A and B and C

Insérez un " "après chaque caractère dans une chaîne

print " ".join("freeCodeCamp")

Production:

f r e e C o d e C a m p

Rejoindre avec une chaîne vide.

list1 = ['p','r','o','g','r','a','m'] print("".join(list1))

Production:

program

Rejoindre avec des ensembles.

test = {'2', '1', '3'} s = ', ' print(s.join(test))

Production:

2, 3, 1

Plus d'information:

Documentation Python sur la jointure de chaîne

Méthode de remplacement de chaîne

La str.replace(old, new, max)méthode est utilisée pour remplacer la sous-chaîne oldpar la chaîne newpour un total de maxfois. Cette méthode retourne une nouvelle copie de la chaîne avec le remplacement. La chaîne d'origine strest inchangée.

Exemples

  1. Remplacez toutes les occurrences de "is"par"WAS"
string = "This is nice. This is good." newString = string.replace("is","WAS") print(newString)

Production

ThWAS WAS nice. ThWAS WAS good.
  1. Remplacez les 2 premières occurrences de "is"par"WAS"
string = "This is nice. This is good." newString = string.replace("is","WAS", 2) print(newString)

Production

ThWAS WAS nice. This is good.

Plus d'information:

En savoir plus sur le remplacement de chaîne dans la documentation Python

Méthode de bande de chaîne

There are three options for stripping characters from a string in Python, lstrip(), rstrip() and strip().

Each will return a copy of the string with characters removed, at from the beginning, the end or both beginning and end. If no arguments are given the default is to strip whitespace characters.

Example:

>>> string = ' Hello, World! ' >>> strip_beginning = string.lstrip() >>> strip_beginning 'Hello, World! ' >>> strip_end = string.rstrip() >>> strip_end ' Hello, World!' >>> strip_both = string.strip() >>> strip_both 'Hello, World!'

An optional argument can be provided as a string containing all characters you wish to strip.

>>> url = 'www.example.com/' >>> url.strip('w./') 'example.com'

However, do notice that only the first . got stripped from the string. This is because the strip function only strips the argument characters that lie at the left or rightmost. Since w comes before the first . they get stripped together, whereas ‘com’ is present in the right end before the . after stripping /.

String Split Method

The split() function is commonly used for string splitting in Python.

The split() method

Template: string.split(separator, maxsplit)

separator: The delimiter string. You split the string based on this character. For eg. it could be ” ”, ”:”, ”;” etc

maxsplit: The number of times to split the string based on the separator. If not specified or -1, the string is split based on all occurrences of the separator

This method returns a list of substrings delimited by the separator

Examples

Split string on space: ” ”

string = "freeCodeCamp is fun." print(string.split(" "))

Output:

['freeCodeCamp', 'is', 'fun.']

Split string on comma: ”,”

string = "freeCodeCamp,is fun, and informative" print(string.split(","))

Output:

['freeCodeCamp', 'is fun', ' and informative']

No separator specified

string = "freeCodeCamp is fun and informative" print(string.split())

Output:

['freeCodeCamp', 'is', 'fun', 'and', 'informative']

Note: If no separator is specified, then the string is stripped of all whitespace

string = "freeCodeCamp is fun and informative" print(string.split())

Output:

['freeCodeCamp', 'is', 'fun', 'and', 'informative']

Split string using maxsplit. Here we split the string on ” ” twice:

string = "freeCodeCamp is fun and informative" print(string.split(" ", 2))

Output:

['freeCodeCamp', 'is', 'fun and informative']

More Information

Check out the Python docs on string splitting