Python Anfänger: Rechtecke

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
TheErebos
User
Beiträge: 2
Registriert: Sonntag 18. November 2018, 21:09

Hey,

ich habe grade erst angefangen Python zu programmieren und habe eine kleine Frage, die warscheinlich schon mit Anfängerwissen in Python zu beantworten ist.

Ich habe schnell einen Einstieg in die objektiorientierte Programmierung gewagt, die ich bisher nur in Java probiert hatte und momentan sieht mein Code wie folgt aus:

Code: Alles auswählen

#!/usr/bin/python
#Rechtecke Flaecheunterschied

class Rechteck:

    def __init__ (self, exbreite, exhoehe):
        self.breite = exbreite;
        self.hoehe = exhoehe;

    def flaeche():
        return (breite*hoehe)

#Rechtecke
r_name = ["r1", "r2"];
r_breite1 = [30, 40];
r_hoehe1 = [4, 5];

#Erstellung Objekte
for i in range(len(r_name)):
    r_name[i] = Rechteck(r_breite1[i], r_hoehe1[i]);

#Vergleichen Flaecheninhalt
def compare_f(*args):
    return abs(r1.flaeche-r2.flaeche)

#Ausgabe
print("Der Flaechenunterschied betraegt {} Quadratmeter.".format(compare_f(r1.fleache, r2.fleache))


Leider treten beim Ausführen einige Fehler auf und ehrlich gesagt bin ich etwas ratlos.


File "None.py", line 28

^
SyntaxError: unexpected EOF while parsing
Benutzeravatar
pixewakb
User
Beiträge: 1411
Registriert: Sonntag 24. April 2011, 19:43

In der letzten Zeile fehlt eine schließende Klammer (")"), dann läuft das Programm erst einmal, bricht aber mit einem Fehler direkt wieder ab.

Code: Alles auswählen

#!/usr/bin/python
# Rechtecke Flaecheunterschied

class Rechteck:

    def __init__ (self, breite, hoehe):
        self.breite = breite
        self.hoehe = hoehe

    def flaeche(self):
        return(self.breite * self.hoehe)

# Rechtecke
r1 = Rechteck(30, 4)
r2 = Rechteck(40, 5)


# Ausgabe
print("Der Flaechenunterschied betraegt {} Quadratmeter.".format(abs(r1.flaeche() - r2.flaeche())))
Die Semikolons kannst Du Dir direkt abgewöhnen, der angepasste Quellcode ist lauffähig.
Antworten