Namen nach Nachnamen sortieren

Ein Programmierbeispiel, mit dem eine Namensliste nach Nachname sortiert wird, aufsteigend und absteigend.   NAMES = [’sylvester Stallone‘, ‚BOB BELDERBOS‘, ‚julian sequeira‘, ‚anna netrebko‘, ‚keanu reeves‘,           ‚julbob pybites‘, ‚bob belderbos‘, ‚Julian Sequeira‘, ‚james woods‘, ‚ludmilla pavlichenko‘, ‚MATT damon‘] def dedup_and_title_case_names(names):    „““ Wandelt die Namen in der Liste in title-case um. „““     return list({name.title() for name in names}) def sort_by_surname_desc(names):     „““ Gibt eine Liste zurück absteigend sortiert nach […]

Umwandlung int in Zahl mit römische Ziffern

Ein Programmierbeispiel, mit dem ein int-Wert zwischen 0 und 4000 in eine Zahl mit römischen Ziffern umgewandelt werden kann. def romanize(decimal_number):“““   Wandelt die gegebene int-Zahl im Bereich 0 bis 4000 in eine Zahl mit römischen Ziffern um.“““    if not isinstance(decimal_number, int) or decimal_number <= 0 or decimal_number >= 4000:         raise ValueError()     result = “     count_m = decimal_number // 1000     if count_m > 0:   […]

Umwandlung int in hex-Wert

Beispiel für die Umwandlung eines int-Wertes in einen Hex-Wert: def rgb_to_hex(rgb): „““Wandelt das gegebene Tuple mit den drei int-Werten (r, g, b) um in einen String mit drei Hex-Werten, und prüft dabei ob alle int-Werte im Bereich von 0 bis 255 liegen.“““ if not all(0 <= val <= 255 for val in rgb): raise ValueError(f’rgb {rgb} not in range(255)‘) return ‚#‘ + “.join([f'{val:02x}‘ for val in rgb]).upper()print(rgb_to_hex((139, 0, 0))) # dark redprint(rgb_to_hex((46, 139, 87))) # […]

Vergleich der String-Formatierung

Das Zen von Python sagt, „Es sollte einen – und vorzugsweise nur einen – offensichtlichen Weg geben, es zu tun.“ Und doch gibt es drei Hauptmethoden für die String-Formatierung in Python. In diesem Artikel werden diese drei Methoden miteinander verglichen und man erhält Erkenntnisse und Empfehlungen, welche Methode in der jeweiligen Situation die beste ist. Im Folgenden wird man: die alte Formatierung im C-Stil mit % kennenlernen; die String-Methode .format kennenlernen; das Python 3.6+ Feature […]

Debugging mit print()

Im Regelfall ist es verpönt Print-Befehle für ein Debugging zu verwenden. Ein Grund ist, dass man diese kurzfristig eingefügten Befehle vergisst, und sie somit in Produktion gelangen. Andererseits kann man manchmal schnell und einfach einen Fehler einkreisen und finden, wenn man anstatt eines Debuggers einen Print-Befehle verwendet. Vor allem in selbst geschriebenen Code kann man häufig mit temporären Ausgaben schneller agieren. Wenn man einen Debugger einsetzt, muss man sich auch zuerst Gedanken machen, an welchen […]