LU10.A02: Kryptowährungen

Erstelle ein Skript, das zwischen Schweizer Franken und einer Auswahl von Kryptowährungen umrechnet.

Das Skript kennt eine Reihe von Argumenten, welche du der Usage-Meldung des Skripts entnehmen kannst. Die Argumente können entweder anhand Ihrer Reihenfolge oder anhand der Kürzel (z.B. -a) angegeben werden.

Usage: crypto_converter.py AMOUNT [FROM_UNIT] [TO_UNIT]
Usage: crypto_converter.py -a AMOUNT [-f FROM_UNIT] [-t TO_UNIT]

Converts an amount between various cryptocurrencies.

Arguments:
  -a, --amount AMOUNT    The amount to be converted. Specify as a number (e.g., 100, 0.5).
  -f, --from FROM_UNIT   The unit of the input amount. Use "CHF" for Swiss Francs or the symbol of a cryptocurrency (e.g., BTC, ETH). Default is "CHF"
  -t, --to TO_UNIT       The unit of the desired output. Use "CHF" for Swiss Francs or the symbol of a cryptocurrency (e.g., BTC, ETH). Default is "CHF"

Examples:
  Convert 100 CHF to Bitcoin:
    chf_crypto_converter.py -a 100 -f CHF -t BTC

  Convert 0.05 BTC to Swiss Francs:
    chf_crypto_converter.py --amount 0.05 --from BTC --to CHF

Zunächst identifiziert und übernimmt das Skript die angegebenen Argumente. Fehlende Argumente werden durch den Defaultwert ersetzt.

In der Funktion convert wird der Betrag umgerechnet.

  • Argumente:
    • amount (Float)
    • from_unit (String, 3 Buchstaben A-Z)
    • to_unit (String, 3 Buchstaben A-Z)
  • Returnwert: Umgerechneter Betrag

Erstelle dazu einen Dictionary mit einigen Kryptowährungen (Key) und deren Wechselkurs (Value) zum Schweizer Franken. Zum Beispiel:

Key Value
CHF 1.00
BTC 97560.753

Falls die from_unit oder to_unit nicht bekannt sind, soll eine Exception ausgelöst werden. Diese Exception muss im main aufgefangen und verarbeitet werden.

Gib das Resultat der Rechnung in der Konsole aus. Zum Beispiel:

crypto_converter.py --amount 0.05 --from BTC --to CHF

0.05 BTC = 4878.03765 CHF

Marcel Suter

  • modul/m122/learningunits/lu10/aufgaben/crypto.txt
  • Zuletzt geändert: 2025/01/13 09:32
  • von msuter