Wie man in Python 2 und 3 eine Zeichenkette in Kleinbuchstaben konvertiert
- Zeichenkette in Python 3 in Kleinbuchstaben konvertieren
- String in Python 2.7 in Kleinbuchstaben konvertieren
- Schlussfolgerung
Zeichenkette in Python 3 in Kleinbuchstaben konvertieren
Der str
Typ seit Python 3.0 enthält standardmäßig Unicode
Zeichen, d.h. jede Zeichenkette wie "Unicode Beispiel"
, 'Unicode Beispiel 2'
wird als Unicode
gespeichert.
Daher können Sie str.lower()
verwenden, um jede Zeichenkette in Python 3 in Kleinbuchstaben zu konvertieren.
exampleString = "CaseString"
exampleString.lower()
# Out: 'casestring'
exampleString = "СтрокаСлучая"
exampleString.lower()
# Out: 'строкаслучая'
str.casefold()
caseless
str.lower()
konvertiert die Zeichenkette in Kleinbuchstaben, aber es konvertiert nicht die Groß-/Kleinschreibung in der Zeichenkette.
Zum Beispiel ist ß
im Deutschen gleich doppeltem s
- ss
, und ß
selbst ist bereits kleingeschrieben, daher wird str.lower()
es nicht konvertieren.
Aber str.casefold()
wird ß
in ss
konvertieren.
>>> 'Straße'.lower()
'straße'
>>> 'Straße'.casefold()
'strasse'
String in Python 2.7 in Kleinbuchstaben konvertieren
Der Typ str
wird in Python 2.7 nicht als Unicode
gespeichert, und Unicode
Strings sind Instanzen vom Typ Unicode
. Wir müssen unterscheiden, ob es sich um einen ASCII
String oder um einen Unicode
String handelt, wenn wir den String in Kleinbuchstaben konvertieren.
ASCII
Typ
Genauso ist es mit der in Python 3 verwendeten Methode. str.lower()
wandelt den String in Kleinbuchstaben um.
exampleString = "CaseStringExample"
exampleString.lower()
# Out: 'casestringexample'
unicode
typ
Wenn die Zeichen in der Zeichenkette vom Typ Unicode
sind, und die Zeichenkette nicht explizit vom Typ Unicode
dargestellt wird, konvertiert die Methode str.lower()
die Zeichenkette überhaupt nicht in Kleinbuchstaben.
# python 2.x
exampleString = "СтрокаСлучая"
print exampleString.lower()
#Out: СтрокаСлучая
exampleString.lower() == exampleString
#Out: True
Python-Objekte zu Nicht-ASCII-Bytes in einem String mit no-encoding angegeben, weil die beabsichtigte Kodierung implizit ist.
Verwendung von Unicode
-Literalen aber nicht 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: строкаслучая
Hier konnte man sehen, dass das erste Zeichen der Zeichenkette von \u0421
in \u0441
umgewandelt wird.
Konvertiere eine str
in unicode
Wenn der angegebene String in der Form str
vorliegt, müssen wir ihn zuerst in Unicode
konvertieren, bevor wir ihn in Kleinbuchstaben konvertieren.
exampleString = "СтрокаСлучая"
print exampleString.decode("utf-8").lower()
# Out: строкаслучая
Schlussfolgerung
Die lower()
Methode ist die Methode, um Strings sowohl in Python 2 als auch in Python 3 in Kleinbuchstaben zu konvertieren, aber mit einem merklichen Unterschied.
string in Python 3 ist standardmäßig die unicode
-Zeichenkette, aber string in Python 2 nicht. Wenn die Zeichenkette nicht explizit als unicode
Typ dargestellt wird, z. B. indem kein u
vor die Zeichenkette gesetzt wird, wird die Unicode-Zeichenkette überhaupt nicht in Kleinbuchstaben konvertiert.
str.casefold
wandelt die Groß- und Kleinschreibung in ihre Übereinstimmung mit der Groß- und Kleinschreibung um, ist aber nur in Python 3 verfügbar. Sie könnten py2casefold in Python 2 installieren.
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 FacebookVerwandter Artikel - Python String
- Entfernen Kommas aus String in Python
- Wie man prüft, ob eine Zeichenkette auf pythonische Weise leer ist
- Konvertieren einer Zeichenkette in einen Variablennamen in Python
- Wie man Leerzeichen in einem String in Python entfernt
- Wie man in Python Zahlen aus einer Zeichenkette extrahiert
- Wie man in Python String in datetime konvertiert