Comment convertir une chaîne de caractères en minuscules en Python 2 et 3
- Convertir une chaîne de caractères en minuscules en Python 3
- Convertir une chaîne de caractères en minuscules en Python 2.7
- Conclusion
Convertir une chaîne de caractères en minuscules en Python 3
Le type str
puisque Python 3.0 contient par défaut des caractères Unicode
, ce qui signifie que toute chaîne comme "unicode example"
, 'unicode example 2'
est stockée en Unicode
.
Par conséquent, vous pourriez utiliser str.lower()
pour convertir n’importe quelle chaîne en minuscules dans Python 3.
exampleString = "CaseString"
exampleString.lower()
# Out: 'casestring'
exampleString = "СтрокаСлучая"
exampleString.lower()
# Out: 'строкаслучая'
str.casefold()
conversion en minuscules
str.lower()
convertit la chaîne en minuscules, mais il ne convertit pas les distinctions de casse dans la chaîne.
Par exemple, ß
en allemand est égal au double s
- ss
, et ß
lui-même est déjà en minuscule, donc, str.lower()
ne la convertira pas.
Mais str.casefold()
convertira ß
en ss
.
>>> 'Straße'.lower()
'straße'
>>> 'Straße'.casefold()
'strasse'
Convertir une chaîne de caractères en minuscules en Python 2.7
Le type str
en Python 2.7 n’est pas stocké en Unicode
, et les chaînes Unicode
sont des instances du type unicode
. Nous devons distinguer si la chaîne est une chaîne ASCII
ou une chaîne unicode
lorsque nous convertissons la chaîne en minuscules.
Type ASCII
Il en est de même avec la méthode utilisée en Python 3. str.lower()
convertit la chaîne de caractères en minuscules.
exampleString = "CaseStringExample"
exampleString.lower()
# Out: 'casestringexample'
Type unicode
Si les caractères de la chaîne sont de type Unicode
, et que la chaîne n’est pas explicitement représentée en type Unicode
, la méthode str.lower()
ne convertit pas du tout la chaîne en minuscules.
# python 2.x
exampleString = "СтрокаСлучая"
print exampleString.lower()
#Out: СтрокаСлучая
exampleString.lower() == exampleString
#Out: True
Python fait des objets sur des octets non-ASCII dans une chaîne sans codage donné parce que le codage prévu est implicite.
Utiliser des littéraux Unicode
mais pas str
exampleUnicodeString = u"СтрокаСлучая"
exampleUnicode
# u'\u0421\u0442\u0440\u043e\u043a\u0430\u0421\u043b\u0443\u0447\u0430\u044f'
exampleUnicodeString.lower()
# u'\u0441\u0442\u0440\u043e\u043a\u0430\u0441\u043b\u0443\u0447\u0430\u044f'
print exampleUnicodeString.lower()
# Out: строкаслучая
Vous pouvez voir ici que le premier caractère de la chaîne est converti de \u0421
à \u0441
.
Convertissez une str
en unicode
Si la chaîne donnée est sous forme de str
, nous devons d’abord la convertir en Unicode
avant de la convertir en minuscules.
exampleString = "СтрокаСлучая"
print exampleString.decode("utf-8").lower()
# Out: строкаслучая
Conclusion
La méthode lower()
est la méthode pour convertir une chaîne de caractères en minuscules à la fois en Python 2 et 3, mais avec une différence notable.
string en Python 3 est la chaîne unicode
par défaut, mais la chaîne en Python 2 ne l’est pas. Si la chaîne n’est pas explicitement représentée comme étant de type unicode
, par exemple en ne mettant pas u
avant la chaîne, la chaîne unicode ne sera pas du tout convertie en minuscules.
Le paramètre str.casefold
convertit les distinctions de casse en leurs correspondances sans casse, mais n’est disponible qu’en Python 3. Vous pouvez installer py2casefold en Python 2.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn FacebookArticle connexe - Python String
- Supprimer les virgules de la chaîne en Python
- Comment vérifier qu'une chaîne est vide de manière pythonique
- Convertir une chaîne en nom de variable en Python
- Comment supprimer les espaces dans une chaîne de caractères en Python
- Comment extraire des nombres d'une chaîne de caractèresen Python
- Comment convertir une chaîne de caractères en datetime en Python