Samstag, 2. März 2013

Palindromtest

Problem Nr. 3 bei HP Code Wars II war einen Palindromtest zu implementieren. Ich hatte mich mit dem Thema Palindrom bereits einmal befasst. Im Kern keine Herausforderung, aber eine nette Übung.
def palindrom_testen(word):
    ''' Teste auf Palindrom

    '''
    for zeichen in [" ",",",".",";","'","\n"]:
        word = word.replace(zeichen,"")
        
    if word.lower() == word.lower()[::-1]:
        return True
    else:
        return False


data = """1881 
Madam, I'm Adam. 
Lisa Bonet ate no basil. 
Taste penne pasta."""

data = data.split("\n")

for line in data:
    # Prüfung und Ausgabe
    print(line)

    if palindrom_testen(line):
        print("\tis a palindrome.")
    else:
        print("\tis *not* a palindrome.")
Den heutigen Teilnehmern an den HP Code wars viel Erfolg. Ich verfolge es gerade über Facebook.

1 Kommentar:

  1. Anstelle des ``if``/``else`` hätte ein ``return word.lower() == word.lower()[::-1]`` genügt. Dieser Vergleich ergibt ja schon `True` oder `False`.

    AntwortenLöschen