Seite 1 von 1

Prüfung auf Gleichheit

Verfasst: Donnerstag 16. September 2021, 11:23
von yendar
Servus Leute,

bin ziemlicher Python Anfänger und lerne gerade alles aus einem Buch.
Im jetzigen Kapitel soll ich bestimmte Werte auf Gleichheit prüfen.

Sprich, wenn ich eingebe: car = "bmw"
car == "bmw"
print(car == car)

Wird es mit True ausgegeben.

Wenn ich aber folgendes eingebe: car = "audi"
car == "bmw"
print(car == car)

wird es trotzdem noch als True ausgegeben, obwohl es im Buch mit False ausgegeben wird.

Weiß jemand was ich falsch mache?

LG

Re: Prüfung auf Gleichheit

Verfasst: Donnerstag 16. September 2021, 11:54
von Kampfgummibaerlie

Code: Alles auswählen

>>> car = 'bmw'
>>> car == "bmw"
True
>>> car = "audi"
>>> car == "bmw"
False
bei mir funktioniert dein Code einwandfrei ;)
also liegt der Fehler nicht am Code

EDIT:
du kontrollierst, ob die Variable car der Variable car entspricht, Fehler entdeckt... (guten Morgen xD)
muss also stimmen...

EDIT2:
probier mal car == "bmw"

dann prpüfst du ob die String Variable "car" dem Wert "bmw" entspricht, diese kann auch false ausgeben

Re: Prüfung auf Gleichheit

Verfasst: Donnerstag 16. September 2021, 11:58
von sparrow
@Kampfgummuebaerlie: Das ist nicht der Code, den der Threadstarter geschrieben hat.

@yendar:
Wenn du etwas an den Namen "car" bindest, dann ist car natürlich immer gleich car. Es ist ja gleich sich selbst. car == car kann also niemals False sein.
Wenn car den Wert "audi" hat, dann ist car == "bmw" False, weil "audi" != "bmw".

Re: Prüfung auf Gleichheit

Verfasst: Donnerstag 16. September 2021, 14:30
von __blackjack__
Ich kann's mir nicht verkneifen:

Code: Alles auswählen

In [317]: car == car                                                            
Out[317]: False
`car` ist in diesem Fall natürlich nicht an eine Zeichenkette gebunden. Sondern an eine Zahl. Beziehungsweise gerade an eine Nicht-Zahl. Sehr pathologischer Fall beim Vergleichen. 😱

Code: Alles auswählen

In [318]: car                                                                   
Out[318]: nan

In [319]: type(car)                                                             
Out[319]: float