währungsumrechner !!!

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sunny0303
User
Beiträge: 5
Registriert: Freitag 6. Juni 2008, 15:55

Hey und hallo!
ich wollte ma fragen ob jmd weiß wie ich einen währungsumrechner machen soll ich hab zwar schon etwas aber es funktioniert nicht und ist sehr einfach gemacht, wenn jmd einen besseren hat bitte melden im vorraus Danke!!! :D

Code: Alles auswählen

waeliste=['EUR','USD','CZK','SEK']
kursliste=[ 1, 1.4616, 26.1780, 9.4251]

def umrechnen(betrag, kurs1, kurs2):
    return(kurs2*betrag)/kurs1

def ist_zahl(Ziffer):
    try:
        float(Ziffer)
        return True
    except:
        return False

    while:
    print'''Bitte wählen!'''\n\
    1.Euro
    2.US Dollar
    3.Tschechische Kronen
    4.Schwedische Kronen

    print ausgang = ' '

while:
    print'Wählen sie bitte ihre Startwährung:',
    ausgang= raw_input()

    if not ist_zahl(ausgang) or ausgang not in '1234':
        else:
            print'Fehler,Eingabe wiederholen'
            break
while:
    print'Wählen sie die Zielwährung:',
    ziel = raw_input()

    if not ist_zahl(ausgang) or ausgang not in '1234':
        else:
            print'Fehler,Eingabe wiederholen'
            break

while:
    print'Wie lautet der Betrag?',
    betrag = raw_input()

    if ist_zahl(betrag):
        break
    else:
        print'Fehler, Eingabe wiederholen.'
        ausgang=eval(ausgang)
        betrag=eval(betrag)
print'%.2f %s entsprechen %.2f %s.' %(betrag,waeliste[ausgang-1],\
                                      umrechnen(betrag,\
                                                kursliste[ausgang-1],\
                                                kursliste[ziel-1],\
                                      waeliste[ziel-1])

print'Zum Beenden <ende> eingeben, sonst Taste drücken!'
wahl = raw_input()
if wahl=='ende':
    print'CIAO!'
    break
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Kannst du mal kurz deine Python-Voraussetzungen zusammenfassen?

Dein Quelltext enthält sehr eigenartige Elemente, die von einer korrekten Python-Syntax sehr weit entfernt sind. :shock:
lunar

Sorry, aber dem Code solltest du wirklich das Tutorial durcharbeiten bzw. ABoP lesen.
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Von `while:` und der Verwendung von `eval()` (bzw. von dessen angepeiltem Zweck) mal abgesehen halte ich das ehrlich gesagt für ein annehmbares Stück Code eines Anfängers. Klar, viele andere als auch ich hätten viele Dinge anders gemacht, aber für die Mittel, die ein Einsteiger hat, macht das durchaus Hoffnung. Man muss nicht immer alles als Ganzes runterputzen.


sunny0303: Jag' deinen Code doch bitte Mal durch den Interpreter und poste das, was er syntaktisch akzeptiert und vielleicht sogar das von dir einigermaßen gewollte Verhalten erreicht. Im Zweifelsfall sind hier komplette Tracebacks der Fehlersituationen gern gesehen, um dir im Detail helfen zu können.
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Y0Gi hat geschrieben:Von `while:` und der Verwendung von `eval()` (bzw. von dessen angepeiltem Zweck) mal abgesehen halte ich das ehrlich gesagt für ein annehmbares Stück Code eines Anfängers. Klar, viele andere als auch ich hätten viele Dinge anders gemacht, aber für die Mittel, die ein Einsteiger hat, macht das durchaus Hoffnung. Man muss nicht immer alles als Ganzes runterputzen.
Hm. Aber Python-Code ist das nicht.

Ich bin da eher der Meinung, dass man zumindest das Tutorial durchgearbeitet haben sollte ;)
Im Übrigen ist es von Vorteil nur so lange weiter zu schreiben wie man sich relativ sicher sein kann, dass der Code so läuft. Ergo -> In kleinen Schritten voran und immer brav testen. Dann ensteht nicht gleich so ein großer Haufen...öhm...Salat ;)

@sunny: Vergiss, dass es `eval()` gibt und arbeitet konsequent das offizielle Tutorial durch: http://docs.python.org/tut/tut.html
Antworten