Seite 2 von 2

Verfasst: Freitag 7. August 2009, 20:53
von kostonstyle
@cofi
dein beispiel erhalte ich die Fehlermeldung

Code: Alles auswählen

class DivisionByZero(ValueError):
    
    pass

    def division(dividend, divisor):
        if divisor == 0:
            raise DivisionByZero('Division by zero is undefined')
        else:
            return dividend / divisor

try:
    print(division(2, 3))
    print(division(2, 0))
except DivisionByZero as e:
    print(e)
Fehlermeldung

Code: Alles auswählen

Traceback (most recent call last):
  File "/Volumes/Develop/pyexer/src/exercise.py", line 12, in <module>
    print(division(2, 3))
NameError: name 'division' is not defined

Verfasst: Freitag 7. August 2009, 20:55
von cofi
Du solltest das Buch sofort in den Muelleimer werfen. Das Snippet ist kein valides Python.
Da stimmt keine einzige Zeile. Naja gut, Zeile 1 und 2, aber dann ist das der Highway to Hell.

Im Uebrigen ist das ueberhaupt nicht mein Beispiel.

Verfasst: Freitag 7. August 2009, 21:01
von EyDu
In dem Buch steht zwar sehr viel Mist (ich nehme mal an, dass es das Openbook ist), aber das Beispiel dort ist korrekt, du hast es nur falsch abgeschrieben. Dort ist sogar von der Funktion "division" und nicht von Methode die Rede. Auch das fehlende "self" sollte einem zu Denken geben.

Verfasst: Freitag 7. August 2009, 21:01
von kostonstyle
ha?? welches ist den dein Beispiel?

Genau, das Buch ist so eine Scheisse, kennst du das Buch http://www.galileocomputing.de/katalog/ ... 4-9d9kDwnM
Ist irgendwie unvollständig erklärt. Kannst du mir ein anderes Buch empfehlen?

Verfasst: Freitag 7. August 2009, 21:08
von cofi
@EyDu: Nein, das hier ist Teufelsbrut Reloaded ;)

Wieso brauchst du denn ein Buch? Es gibt das - mittlerweile sogar fast vollstaendig uebersetzte - Tutorial.

Daneben gibts noch das Buch von Summerfield, das wohl recht gut sein soll.

Verfasst: Freitag 7. August 2009, 21:26
von kostonstyle
also wo finde ich dieses tutorials? wie hast du überhaupt python gelernt?

Verfasst: Freitag 7. August 2009, 21:40
von cofi
http://lmgtfy.com/?q=python+tutorial
Der Link zur Uebersetzung kommt mehrmals im Thread vor ...

Learning by Doing. Wenn du die Grundlagen kennst, suchst du dir ein Problem und versuchst das zu loesen..

Verfasst: Freitag 7. August 2009, 22:01
von EyDu
cofi hat geschrieben:@EyDu: Nein, das hier ist Teufelsbrut Reloaded ;)
Das setzt dann wohl das in der ersten Version noch ungenutzte Fehlerpotential um :lol: