Einführung
Ein Palindrom ist ein Wort, eine Phrase, eine Zahl oder eine andere Zeichenfolge, die sowohl von vorne nach hinten als auch von hinten nach vorne gelesen gleich ist. Beispielsweise ist "racecar" ein Palindrom, da das Wort, wenn man es umkehrt, immer noch "racecar" schreibt. In dieser Herausforderung werden Sie eine Funktion schreiben, die überprüft, ob eine gegebene Zeichenfolge ein Palindrom ist.
Palindrom
Schreiben Sie eine Funktion palindrome(s), die einen String s als einzigen Parameter nimmt und True zurückgibt, wenn s ein Palindrom ist, und False sonst. Ihre Funktion sollte die Groß-/Kleinschreibung und nicht-alphanumerische Zeichen beim Überprüfen auf Palindrome ignorieren.
Um dieses Problem zu lösen, können Sie die folgenden Schritte ausführen:
- Verwenden Sie
str.lower(), um den String in Kleinbuchstaben umzuwandeln. - Verwenden Sie
re.sub(), um alle nicht-alphanumerischen Zeichen aus dem String zu entfernen. - Vergleichen Sie den resultierenden String mit seiner Umkehrung mithilfe der Slicenotation.
from re import sub
def palindrome(s):
s = sub('[\W_]', '', s.lower())
return s == s[::-1]
palindrome('taco cat') ## True
Zusammenfassung
In dieser Herausforderung haben Sie gelernt, wie Sie überprüfen, ob ein gegebener String ein Palindrom ist. Sie haben str.lower() und re.sub() verwendet, um den String in Kleinbuchstaben umzuwandeln und nicht-alphanumerische Zeichen zu entfernen, und haben dann den resultierenden String mit seiner Umkehrung mithilfe der Slicenotation verglichen.