Ich hätte es eher ins "Snippet"-Forum gepostet. Das ist genau für solche (kleinen) Schnipsel gedacht
Welche Python-Version benutzt Du? Auf der einen Seite verwendest Du `print` als Funktion, auf der anderen Seite nutzt Du `raw_input`, welches afair unter Python3 gar nicht mehr existiert!
Nun zum Script:
- zwischen Funktionsname und Klammer gehört kein Leerzeichen:
- Wieso nutzt Du keine String-Formatierungsmethoden, um die Fläche oder die Länge auszugeben? Bei Python3 kannst Du ja sogar beliebig viele Parameter beliebigen Typs angeben:
- Man sollte pro Zeile nur einen Python-Ausdruck schreiben und diese nicht per ";" trennen. Das ist imho nur bei Code-Golf sinnvoll und akzeptiert
- Die Einrückung ist Dir wohl bei `else`-Zweig ein wenig kaputt gegangen!
- Wozu überhaupt das `else`? "Fertig" wird das Programm doch auch so?
- Generell bevorzugen viele eher englische Namen für Bezeichner.
- Anstelle zwei mal ziemlich gleichen Code zu schreiben, könntest Du auch folgendermaßen vorgehen:
Code: Alles auswählen
if laenge == breite:
ist_quadrat = "Ja"
else:
ist_quadrat = "Nein"
print("Quadrat:", ist_quadrat)
- Noch geschickter kann man das über ein Mapping zwischen dem booleschen Werten (`True` und `False`) und den deutschen Ausdrücken lösen:
Code: Alles auswählen
if laenge == breite:
ist_quadrat = True
else:
ist_quadrat = False
print("Quadrat:", {True: "Ja", False: "Nein"}[ist_quadrat])
Dazu brauchst Du die Grundlagen über Dictionaries
Obiger Code ist allerdings viel zu aufgebläht, da ein Vergleich wie `laenge == breite` ja bereits einen Wahrheitswert liefert. Daher können wir den Vergleich direkt zur Auswahl des passenden Wortes nutzen:
Code: Alles auswählen
print("Quadrat:", {True: "Ja", False: "Nein"}[laenge == breite])
Damit sparen wir uns das `if-else`-Konstrukt.
Generell wäre imho der nächste Punkt aber, dass Du für die Flächenberechnung eine Funktion schreibst und diese anstelle der direkten Berechnung aufrufst. Analog kannst Du dann auch eine Funktion zur Überprüfung auf ein Quadrat schreiben.
Insgesamt solltest Du Dir folgendes Template als Basis für Deine Scripte angewöhnen:
Code: Alles auswählen
#!/usr/bin/env python
# coding: utf-8
def main():
# hier kommt dann Dein Code rein
pass
if __name__ == "__main__":
main()