Methoden zur Groß-/Kleinschreibung von Zeichenketten
Wir haben bereits gesehen, wie leistungsfähig Python beim Umgang mit Strings sein kann. Wir können in der Zeichenkette mit dem in-Schlüsselwort suchen, ein Stück Text durch Slicing entnehmen, seine Länge ermitteln, mit f-strings formatieren usw. Das ist tatsächlich nur die Spitze des Eisbergs.
In Python gibt es viele Hilfsfunktionen, um mit komplexeren Textmanipulationen umzugehen. Es gibt über 40 Hilfsfunktionen, die in verschiedenen Szenarien verwendet werden können. Die vollständige Liste dieser Methoden findet sich auf der offiziellen Python-Webseite: String-Methoden. Die gute Nachricht ist, dass es nicht notwendig ist, sie alle auswendig zu kennen. Fast alle haben einen sehr intuitiven Namen, und es ist einfach, das Notwendige mit einer schnellen Google-Suche zu finden. Wir werden einige sehr populäre Funktionen behandeln, die von Zeit zu Zeit nützlich sind und häufig beim Arbeiten mit Strings verwendet werden.
# .upper() macht alle Buchstaben zu Großbuchstaben
s = 'What happened to Anna?'
up = s.upper()
print('Hi 123 this is Sally!'.upper()) # HI 123 THIS IS SALLY!
print(s) # What happened to Anna?
print(s.upper()) # WHAT HAPPENED TO ANNA?
print(up) # WHAT HAPPENED TO ANNA?
# .lower() macht alle Buchstaben zu Kleinbuchstaben
s = 'What happened to Anna?'
low = s.lower()
print('Hi 123 this is Sally!'.lower()) # hi 123 this is sally!
print(s) # What happened to Anna?
print(s.lower()) # what happened to anna?
print(low) # what happened to anna?
# .title() beginnt alle Wörter mit einem Großbuchstaben (Title-Case)
s = 'What happened to Anna?'
title = s.title()
print('Hi 123 this is Sally!'.title()) # Hi 123 This Is Sally!
print(s) # What happened to Anna?
print(s.title()) # What Happened To Anna?
print(title) # What Happened To Anna?
# .capitalize() beginnt den Satz mit einem Großbuchstaben
s = 'What happened to Anna?'
capital = s.capitalize()
print('Hi 123 this is Sally!'.capitalize()) # Hi 123 this is sally!
print(s) # What happened to Anna?
print(s.capitalize()) # What happened to anna?
print(capital) # What happened to anna?
# .swapcase() wandelt Kleinbuchstaben in Großbuchstaben um und umgekehrt
s = 'What happened to Anna?'
swapped = s.swapcase()
print('Hi 123 this is Sally!'.swapcase()) # hI 123 THIS IS sALLY!
print(s) # What happened to Anna?
print(s.swapcase()) # wHAT HAPPENED TO aNNA?
print(swapped) # wHAT HAPPENED TO aNNA?
Es ist wichtig zu beachten, dass die String-Methoden die ursprüngliche Variable nicht verändern. Sie erzeugen einen neuen Wert und geben ihn zurück. Der Originalwert bleibt gleich. Wenn man also a.lower() aufruft, ändert sich der Wert von a nicht. Er bleibt derselbe, aber lower() gibt einen neuen Wert zurück, der die kleingeschriebene Version von a enthält.
Herausforderung
Du erhältst einen Befehl und einen Text. Deine Aufgabe ist es, diesen Befehl auf den Text anzuwenden.
Der Befehl kann einer der folgenden sein: upper, lower, capitalize, title, swap.
Der Befehl kann auch in Groß- oder Kleinbuchstaben dargestellt sein. Die Befehlsverarbeitung sollte nicht zwischen Groß- und Kleinschreibung unterscheiden.
Die erste Zeile des Programms enthält den Befehl. Die zweite Zeile enthält den Text, der verändert werden muss.
Die Ausgabe sollte eine einzelne Zeile sein – der transformierte Text.