Sorry für die Anfägerfrage, aber wie kann man etwas komplexere IF Abfragen mit AND, OR, NOT komponieren?
Angenommen ich will folgende IF Abfrage haben:
IF (var1==12 OR string2=="karl") AND ((var3==333) and NOT (string4=="peter")) .......
Wie kann ich so etwas in Python formulieren?
Danke
Peter
If Abfragen und boolesche Verknüpfungen AND, OR, NOT ?
@pstein: *Fast* genau so. Du musst jetzt nur noch in der Dokumentation nachlesen wie die boole'schen Operatoren in Python ausgedrückt werden. Das Tutorial in der Python-Dokumentation durchzuarbeiten wäre wahrscheinlich auch eine sinnvolle Option.
Edit: ``NOT (string4=="peter")`` würde man aber eher als ``string4 != 'peter'`` ausdrücken.
Edit: ``NOT (string4=="peter")`` würde man aber eher als ``string4 != 'peter'`` ausdrücken.
pstein hat geschrieben: Wie kann ich so etwas in Python formulieren?
var1 = 15
str2 = "karl"
var3 = 333
str4 = "Heinz"
if var1 == 12 or str2 == "karl" and var3 == 333 and str4 is not "peter":
print("yes") #hier bitte einrücken
else:
print("noooo") #hier bitte einrücken
@Cytzix: Klammern sind nicht nur Deko, sondern haben eine wichtige Funktion. »is not« ist der falsche Vergleich, denn dabei wird nur geprüft, dass die beiden Operanden nicht exakt das selbe Objekt sind, was man bei Strings normalerweise nicht wissen will.
Code: Alles auswählen
>>> str4 = "Peter"
>>> str4 is not "Peter"
False
>>> str4 = "Pet"
>>> str4 += "er"
>>> str4
'Peter'
>>> str4 is not "Peter"
True
-
- User
- Beiträge: 1715
- Registriert: Freitag 31. Juli 2015, 13:34
@Cytzix: es heißt richtig: str4 != 'Peter'Cytzix hat geschrieben:@Sirius: Tatsache! Thx. Habe ich auch was gelernt.