From 81c153d54ffea57e71dc288973ab8ed9fa11a9d9 Mon Sep 17 00:00:00 2001 From: Olaf Gladis Date: Sun, 9 Oct 2022 12:52:43 +0200 Subject: [PATCH 1/2] unicode strings are default in python 3 --- Level_01/Beispielcode/calculator01.py | 2 +- Level_02/Beispielcode/calculator02_if.py | 2 +- Level_02/Beispielcode/calculator02_while.py | 2 +- Level_03/Beispielcode/caesar_decode.py | 2 +- Level_03/Beispielcode/caesar_encode.py | 2 +- Level_05/Beispielcode/calculator05.py | 26 ++++++++++----------- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Level_01/Beispielcode/calculator01.py b/Level_01/Beispielcode/calculator01.py index 7433e5f..104d120 100644 --- a/Level_01/Beispielcode/calculator01.py +++ b/Level_01/Beispielcode/calculator01.py @@ -1,4 +1,4 @@ -u""" +""" Das folgende Programm soll eine einfacher Taschenrechner sein. Das Programm nimmt zwei Zahlen entgegen und führt daraufhin einige Berechnungen diff --git a/Level_02/Beispielcode/calculator02_if.py b/Level_02/Beispielcode/calculator02_if.py index d9e8845..de9abf0 100644 --- a/Level_02/Beispielcode/calculator02_if.py +++ b/Level_02/Beispielcode/calculator02_if.py @@ -1,4 +1,4 @@ -u""" +""" Das folgende Programm ist ein einfacher Taschenrechner. Nach dem Eingeben zweier Zahlen kann eine Operation ausgewählt werden. diff --git a/Level_02/Beispielcode/calculator02_while.py b/Level_02/Beispielcode/calculator02_while.py index c5bea8a..90ded72 100644 --- a/Level_02/Beispielcode/calculator02_while.py +++ b/Level_02/Beispielcode/calculator02_while.py @@ -1,4 +1,4 @@ -u""" +""" Das folgende Programm ist ein einfacher Taschenrechner. Nach dem Eingeben zweier Zahlen kann eine Operation ausgewählt werden. diff --git a/Level_03/Beispielcode/caesar_decode.py b/Level_03/Beispielcode/caesar_decode.py index 2b04f60..5d03fa3 100644 --- a/Level_03/Beispielcode/caesar_decode.py +++ b/Level_03/Beispielcode/caesar_decode.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -u""" +""" Dieses Programm implementiert die Cäsar-Chiffre, die schon Gaius Julius Cäsar benutzt haben soll, um mit seinen Generälen vertraulich zu kommunizieren. Es handelt sich dabei um eine mono-alphabetische Substitutionschiffre, das diff --git a/Level_03/Beispielcode/caesar_encode.py b/Level_03/Beispielcode/caesar_encode.py index d729d31..4e16608 100644 --- a/Level_03/Beispielcode/caesar_encode.py +++ b/Level_03/Beispielcode/caesar_encode.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -u""" +""" Dieses Programm implementiert die Cäsar-Chiffre, die schon Gaius Julius Cäsar benutzt haben soll, um mit seinen Generälen vertraulich zu kommunizieren. Es handelt sich dabei um eine mono-alphabetische Substitutionschiffre, das diff --git a/Level_05/Beispielcode/calculator05.py b/Level_05/Beispielcode/calculator05.py index abed52b..f4567b4 100644 --- a/Level_05/Beispielcode/calculator05.py +++ b/Level_05/Beispielcode/calculator05.py @@ -1,4 +1,4 @@ -u""" +""" Das folgende Programm ist ein einfacher Taschenrechner. Nach dem Eingeben zweier Zahlen kann eine Operation ausgewählt werden. @@ -12,7 +12,7 @@ def menu(): - u"""Zeigt ein Menü an.""" + """Zeigt ein Menü an.""" # Zuerst eine Willkommensnachricht print() print("Dies ist ein einfacher Taschenrechner.") @@ -36,7 +36,7 @@ def menu(): def add(): - u""" + """ Addiert zwei eingegebene Zahlen. Die Zahlen können sowohl ganze Zahlen (integer) oder Fließkommazahlen @@ -49,7 +49,7 @@ def add(): def sum(): - u""" + """ Summiert eine Menge an Zahlen auf. Die Summanden können sowohl ganze Zahlen (integer) oder Fließkommazahlen @@ -64,7 +64,7 @@ def sum(): def product(): - u""" + """ Multipliziert eine Menge an Zahlen auf. Die Faktoren können sowohl ganze Zahlen (integer) oder Fließkommazahlen @@ -79,7 +79,7 @@ def product(): def difference(): - u""" + """ Subtrahiert eine Zahl von einer anderen. Minuend und Subtrahend können sowohl ganze Zahlen (integer) oder @@ -92,7 +92,7 @@ def difference(): def quotient(): - u""" + """ Teilt einen Divisor durch einen Dividenden. Dividend und Divisor können sowohl ganze Zahlen (integer), als auch @@ -108,7 +108,7 @@ def quotient(): def modulo(): - u""" + """ Gibt das Ergebnis einer Modulo Division zurück. Dividend und Divisor müssen ganze Zahlen sein. 0 ist als Divisor nicht @@ -124,7 +124,7 @@ def modulo(): def sqrt(): - u""" + """ Berechnet die Quadratwurzel einer eingegebenen Zahl. Die Zahl kann sowohl eine ganze Zahl (integer) als auch eine Fließkommazahl @@ -136,7 +136,7 @@ def sqrt(): def power(): - u""" + """ Berechnet eine Potenz. Basis und Exponent können sowohl ganze Zahlen (integer), als auch @@ -149,7 +149,7 @@ def power(): def fak(): - u""" + """ Berechnet die Fakultät einer Zahl. Die Zahl sollte eine positive ganze Zahl (natürliche Zahl) sein. @@ -162,7 +162,7 @@ def fak(): def help(): - u""" + """ Ruft das Hilfe Menü auf. Das Hilfe Menü zeigt die Docstrings der einzelnen Funktionen an. @@ -173,7 +173,7 @@ def help(): def quit(): - u"""Beendet das Programm.""" + """Beendet das Programm.""" sys.exit(0) From adf9603643a18d7fa768f0f4b752412c4acbafcb Mon Sep 17 00:00:00 2001 From: Olaf Gladis Date: Sun, 9 Oct 2022 12:59:22 +0200 Subject: [PATCH 2/2] use fstrings --- Level_04/Aufgaben/monty_a.py | 2 +- Level_04/Aufgaben/monty_b.py | 6 +++--- Level_04/Aufgaben/monty_c.py | 2 +- Level_05/Beispielcode/calculator05.py | 20 ++++++++++---------- Level_05/strings_erweitert.py | 2 +- Level_07/OOP1.py | 8 ++++---- Level_07/Ueberladung.py | 6 +++--- Level_08/generatoren.py | 2 +- Level_10/textbox.py | 4 ++-- 9 files changed, 26 insertions(+), 26 deletions(-) diff --git a/Level_04/Aufgaben/monty_a.py b/Level_04/Aufgaben/monty_a.py index 44ce518..a7afd57 100755 --- a/Level_04/Aufgaben/monty_a.py +++ b/Level_04/Aufgaben/monty_a.py @@ -22,7 +22,7 @@ text = file_obj.read() # Einlesen des Textes file_obj.close() # Schließen des Dateiobjekts else: - print("Die Datei {} existiert nicht.".format(path_text)) + print(f"Die Datei {path_text} existiert nicht.") exit() # Alternativ: diff --git a/Level_04/Aufgaben/monty_b.py b/Level_04/Aufgaben/monty_b.py index dd0150c..3478c27 100755 --- a/Level_04/Aufgaben/monty_b.py +++ b/Level_04/Aufgaben/monty_b.py @@ -20,7 +20,7 @@ # Einlesen der Datei: if not path.exists(): - print("Die Datei {} wurde nicht gefunden.".format(path)) + print(f"Die Datei {path} wurde nicht gefunden.") exit() table = {} @@ -57,8 +57,8 @@ for entry in table[-(n+1):-1]: rare.append(entry[0]) -print("Die {} häufigsten Buchstaben sind: ".format(n)) +print(f"Die {n} häufigsten Buchstaben sind: ") print(common) -print("Die {} seltenen Buchstaben sind: ".format(n)) +print(f"Die {n} seltenen Buchstaben sind: ") print(rare) diff --git a/Level_04/Aufgaben/monty_c.py b/Level_04/Aufgaben/monty_c.py index f522877..8287795 100755 --- a/Level_04/Aufgaben/monty_c.py +++ b/Level_04/Aufgaben/monty_c.py @@ -20,7 +20,7 @@ text = file_obj.read() file_obj.close() else: - print("Die Datei {} existiert nicht.".format(path_text)) + print(f"Die Datei {path_text} existiert nicht.") exit() # 2. "Python" ersetzen: diff --git a/Level_05/Beispielcode/calculator05.py b/Level_05/Beispielcode/calculator05.py index f4567b4..c9fab20 100644 --- a/Level_05/Beispielcode/calculator05.py +++ b/Level_05/Beispielcode/calculator05.py @@ -22,7 +22,7 @@ def menu(): print() counter = 0 for fun in operations: - print("{} {}".format(counter, fun.__name__)) + print(f"{counter} {fun.__name__}") counter += 1 print("Bitte eine Zahl für eine der Operationen angeben") choice = input(":") @@ -45,7 +45,7 @@ def add(): sum1 = input("Bitte den ersten Summanden eingaben: ") sum2 = input("Bitte den zweiten Summanden eingeben: ") result = float(sum1) + float(sum2) - print("{} + {} = {}".format(sum1, sum2, result)) + print(f"{sum1} + {sum2} = {result}") def sum(): @@ -60,7 +60,7 @@ def sum(): result = 0.0 for i in values: result += float(i) - print("sum({}) = {}".format(values, result)) + print(f"sum({values}) = {result}") def product(): @@ -75,7 +75,7 @@ def product(): result = 1.0 for i in values: result *= float(i) - print("product({}) = {}".format(values, result)) + print(f"product({values}) = {result}") def difference(): @@ -88,7 +88,7 @@ def difference(): minu = input("Bitte den Minuenden eingeben: ") subt = input("Bitte den Subtrahenden eingeben: ") result = float(minu) - float(subt) - print("{} - {} = {}".format(minu, subt, result)) + print(f"{minu} - {subt} = {result}") def quotient(): @@ -104,7 +104,7 @@ def quotient(): print("Ungültige Divisor.") return result = float(divid) / float(divis) - print("{} / {} = {}".format(divid, divis, result)) + print(f"{divid} / {divis} = {result}") def modulo(): @@ -120,7 +120,7 @@ def modulo(): print("Ungültige Divisor.") return result = int(divid) % int(divis) - print("{} % {} = {}".format(divid, divis, result)) + print(f"{divid} % {divis} = {result}") def sqrt(): @@ -132,7 +132,7 @@ def sqrt(): """ radiant = input("Bitte eine Zahl eingeben: ") result = math.sqrt(float(radiant)) - print("sqrt({}) = {}".format(radiant, result)) + print(f"sqrt({radiant}) = {result}") def power(): @@ -145,7 +145,7 @@ def power(): base = input("Bitte die Basis eingeben: ") exp = input("Bitte den Exponenten eingeben: ") result = pow(float(base), float(exp)) - print("{} ^ {} = {}".format(base, exp, result)) + print(f"{base} ^ {exp} = {result}") def fak(): @@ -158,7 +158,7 @@ def fak(): result = 1 for i in range(2, int(x) + 1): result *= i - print("{}! = {}".format(x, result)) + print(f"{x}! = {result}") def help(): diff --git a/Level_05/strings_erweitert.py b/Level_05/strings_erweitert.py index fa1cf8b..e286353 100755 --- a/Level_05/strings_erweitert.py +++ b/Level_05/strings_erweitert.py @@ -25,7 +25,7 @@ # string.format() print("Das folgende Wort wird ersetzt: '{}' Der Rest nicht.".format("blargh")) # Auch: -print("Das folgende Wort wird ersetzt: '{0} und {1}' Der Rest nicht.".format("foo", "bar")) +print("Das folgende Wort wird ersetzt: '{} und {}' Der Rest nicht.".format("foo", "bar")) # Zum Weiterlesen und erweitern: https://www.digitalocean.com/community/tutorials/how-to-use-string-formatters-in-python-3 diff --git a/Level_07/OOP1.py b/Level_07/OOP1.py index 80c4029..f87e727 100755 --- a/Level_07/OOP1.py +++ b/Level_07/OOP1.py @@ -38,7 +38,7 @@ def hello(name: str = "World") -> None: Natürlich können Methoden auch Parameter haben. Dies funktioniert genau so wie bei Funktionen. """ - print("Hello, {}!".format(name)) + print(f"Hello, {name}!") # Die Methode aufrufen: Hello.hello(getuser()) @@ -120,9 +120,9 @@ def print(self): """ Druckt den Kontakt aus. """ - print("Name: {}".format(self.name)) - print("Telefonnummer: {}".format(self.phone)) - print("E-Mail: {}".format(self.email)) + print(f"Name: {self.name}") + print(f"Telefonnummer: {self.phone}") + print(f"E-Mail: {self.email}") c = Contact("Ich", "01234-56789", "mail@example.org") diff --git a/Level_07/Ueberladung.py b/Level_07/Ueberladung.py index ff5ab16..0a150fe 100644 --- a/Level_07/Ueberladung.py +++ b/Level_07/Ueberladung.py @@ -17,7 +17,7 @@ def __init__(self, x, y, z) -> None: def __repr__(self) -> str: """ die menschen-lesbare Darstellung -- str und repr """ - return "({}|{}|{})".format(self.x, self.y, self.z) + return f"({self.x}|{self.y}|{self.z})" def __eq__(self, p: "Punkt") -> bool: """ prüft auf Äquivalenz -- == """ @@ -55,7 +55,7 @@ def __init__(self, p1: Punkt, p2: Punkt) -> None: def __repr__(self) -> str: """ die menschen-lesbare Darstellung -- str und repr """ - return "{} - {}".format(self.p1, self.p2) + return f"{self.p1} - {self.p2}" def __eq__(self, l: "Strecke") -> bool: """ @@ -119,7 +119,7 @@ def __init__(self, *args) -> None: def __repr__(self) -> str: """ die menschen-lesbare Darstellung -- str und repr """ - return "({}|{}|{})".format(self.x, self.y, self.z) + return f"({self.x}|{self.y}|{self.z})" def __eq__(self, l: "Vektor") -> bool: """ Äquivalenz: Vektoren haben eine Richtung. """ diff --git a/Level_08/generatoren.py b/Level_08/generatoren.py index c562d8e..2103d06 100755 --- a/Level_08/generatoren.py +++ b/Level_08/generatoren.py @@ -28,7 +28,7 @@ def dec(func): def inner_func(*args): print(args) r = func(*args) - print("Return: {}".format(r)) + print(f"Return: {r}") return r return inner_func diff --git a/Level_10/textbox.py b/Level_10/textbox.py index ba8d2eb..a6ee1b6 100755 --- a/Level_10/textbox.py +++ b/Level_10/textbox.py @@ -44,10 +44,10 @@ def onClick() -> None: # die Eingabe holen input = text.text() - print("Eingabe: {}".format(input)) + print(f"Eingabe: {input}") # MessageBox erstellen mb = QMessageBox(QMessageBox.Information, "Titel", - "Der eingegebene Text war: \n{}".format(input), QMessageBox.Ok, window) + f"Der eingegebene Text war: \n{input}", QMessageBox.Ok, window) # MessageBox anzeigen mb.show()