import string def buchstaben_ermitteln(eingabe,ausgabe): ''' Ermittelt den Buchstaben und stellt fest, ob es Groß- (capital) oder Kleinbuchstabe (lower-case) ist... ''' for a, b in zip(eingabe,ausgabe): if a != b: letter = b break if letter in string.ascii_uppercase: type = "capital" else: type = "lower_case" return type,letter data = """fountain mountain pet pen check chuck Mike bike""" data = data.split("\n") for line in data: ''' Ausgabe ''' ausgabe,eingabe = line.split(" ") type,letter = buchstaben_ermitteln(eingabe,ausgabe) print('Ripping the {} "{}" from his shirt, Letterman'.format(type,letter)) print('changes "{}" back to "{}".'.format(eingabe,ausgabe))Keine Herausforderung für 2 Punkte.
Samstag, 2. März 2013
Spellbinder
Aufgabe Spellbinder war Problem 2 bei HP Code wars II. Das Problem ist recht einfach, wie mir scheint:
Abonnieren
Kommentare zum Post (Atom)
Statt in `string.ascii_uppercase` zu suchen, hätte man die `isupper()`-Methode auf Zeichenketten verwenden können. Ich hätte das auch nicht in die Funktion geschrieben, sondern separat mit einem bedingten Ausdruck beim Erstellen des Textes entschieden. Eine Funktion sollte nach Möglichkeit nur eine Sache machen.
AntwortenLöschen