Python Language Changer la capitalisation d'une chaîne


Exemple

Le type de chaîne de Python fournit de nombreuses fonctions qui agissent sur la capitalisation d'une chaîne. Ceux-ci inclus :

  • str.casefold
  • str.upper
  • str.lower
  • str.capitalize
  • str.title
  • str.swapcase

Avec les chaînes Unicode (la valeur par défaut dans Python 3), ces opérations ne sont pas des correspondances 1: 1 ou réversibles. La plupart de ces opérations sont destinées à l'affichage, plutôt qu'à la normalisation.


Python 3.x 3.3

str.casefold()

str.casefold crée une chaîne en minuscules qui convient aux comparaisons insensibles à la casse. Cette str.lower est plus agressive que str.lower et peut modifier des chaînes qui sont déjà en minuscules ou dont la longueur augmente, et qui ne sont pas destinées à l'affichage.

"XßΣ".casefold()
# 'xssσ'

"XßΣ".lower()
# 'xßς'

Les transformations qui ont lieu sous le regroupement sont définies par le consortium Unicode dans le fichier CaseFolding.txt sur leur site Web.


str.upper()

str.upper prend chaque caractère d'une chaîne et le convertit en son équivalent en majuscule, par exemple:

"This is a 'string'.".upper()
# "THIS IS A 'STRING'."

str.lower()

str.lower fait le contraire; il prend chaque caractère dans une chaîne et le convertit en son équivalent minuscule:

"This IS a 'string'.".lower()
# "this is a 'string'."

str.capitalize()

str.capitalize renvoie une version en majuscule de la chaîne, c'est-à-dire que le premier caractère est en majuscule et le reste plus bas:

"this Is A 'String'.".capitalize() # Capitalizes the first character and lowercases all others
# "This is a 'string'."

str.title()

str.title renvoie la version du titre de la chaîne, c'est-à-dire que chaque lettre au début d'un mot est en majuscule et que toutes les autres sont en minuscule:

"this Is a 'String'".title()
# "This Is A 'String'"

str.swapcase()

str.swapcase renvoie un nouvel objet chaîne dans lequel tous les caractères minuscules sont remplacés par des majuscules et tous les caractères majuscules vers le bas:

"this iS A STRiNG".swapcase() #Swaps case of each character
# "THIS Is a strIng"

Utilisation en tant que méthodes de classe str

Il convient de noter que ces méthodes peuvent être appelées soit sur des objets de type chaîne (voir ci-dessus), soit comme méthode de classe de la classe str (avec un appel explicite à str.upper , etc.).

str.upper("This is a 'string'")
# "THIS IS A 'STRING'"

Ceci est très utile lorsque vous appliquez l'une de ces méthodes à plusieurs chaînes en même temps, par exemple, une fonction de map .

map(str.upper,["These","are","some","'strings'"])
# ['THESE', 'ARE', 'SOME', "'STRINGS'"]