Wo liegt bei meinem Code der Fehler?

Hallo zusammen,

ich habe grad als Übung diesen Code geschrieben.
Allerdings kommt beim eingeben des neuen Preises dieser Fehler

 AttributeError: 'Auto' object has no attribute 'setPreis'

In dem Buch, aus dem ich den Code habe, steht es allerdings (meiner Ansicht nach) genau so da.

Vielleicht findet ja jemand von euch den Fehler!
LG Tobi

 class Auto:
    def __init__(self,ma, mo, bj, pr):
        self.__Marke = ma
        self.__Modell = mo
        self.__Baujahr = bj
        self.__Preis = pr


def getMarke(self):
    return self.__Marke
def getModell(self):
    return self.__Modell
def getBaujahr(self):
    return self.__Baujahr
def getPreis(self):
    return self.__Preis

def setPreis(self, preis_neu):
    if abs(self.__Preis - preis_neu) < self.__Preis * 0.05:
        self.__Preis = preis_neu
    else:
        print("Die Abweichung von Preis ist sehr groß.")
        bestaetigung = input("Soll",preis_neu,"als neuer Preis festgelegt werden? (ja/nein)")
        if bestaetigung == "ja":
            self.__Preis = preis_neu

auto1 = Auto("VW", "Golf", 2011, 5000)
auto2 = Auto("Audi", "A4", 2003, 13000)
auto3 = Auto("Porsche", "Panamera", 2021, 50000)


# Laut Debug ist der Fehler in der Zeile darunter
wert = eval(input("Geben Sie den neuen Preis ein: "))
auto1.setPreis(wert)

print ("Neuer Preis:", auto1.setPreis())
Computer, programmieren, fehlercode, Python
Warum kann ich nicht auf den erweiterten Start oder BIOS zugreifen?

Ich habe meinen PC heute neu aufgesetzt indem ich unter Einstellungen > System > Wiederherstellung auf Diesen PC zurücksetzen geklickt habe. Nach der Neuinstallation von Windows 11 wollte ich WSL2 installieren, damit ich Docker auf meinem Windows-PC nutzen kann. Um WSL2, den Linux-Kernel und eine Ubuntu-Distribution zu installieren habe ich per PowerShell als Administrator den Befehl wsl --install eingegeben. Als ich den PC daraufhin neu gestartet habe wurde mir durch eine Fehlermeldung bewusst, dass ich die CPU-Virtualisierung nicht aktiviert habe. Daher wollte ich im BIOS meines MSI MAG B550 Tomahawk diese aktivieren.

Wenn ich den erweiterten Start aufrufen möchte bleiben meine Bildschirme (beide per Displayport an meine Nvidia GTX1080 angeschlossen) schwarz mit der Meldung "Kein Signal". Den erweiterten Start habe ich wie folgt versucht aufzurufen:

  • Über Einstellungen > System > Wiederherstellung > Erweiterter Start
  • Die Shift-Taste gedrückt halten während ich auf Neustart gedrückt habe.

Auch direkt in mein BIOS komme ich nicht rein. Hier habe ich alle gängigen BIOS-Starttasten gedrückt (F2, F10, Entf, ...). Anhand der Power-LED am Gehäuse meines PCs sehe ich, dass der PC an ist, jedoch sehe ich nichts.

Ich habe ebenfalls folgendes versucht:

  • Die CMOS-Batterie des Mainboards für 10 Sekunden entfernt und wieder eingesetzt. (Komischerweise wurde mir dann beim Starten von Windows gesagt, dass der PIN zum Anmelden "kaputt" ist und ich ihn neu setzen muss)
  • Einen Bildschirm per HDMI-Kabel direkt an das Mainboard angeschlossen (und auch an einen anderen HDMI-Port der Grafikkarte).

Ich bin dankbar für jede Information, die mir weiterhelfen könnte!

PC, Computer, Betriebssystem, BIOS, Windows 11

Meistgelesene Fragen zum Thema Computer