Aus irgendeinem Grund kann ich mich nicht daran erinnern, wie ich das tun soll. Was ich meine ist das:
value = 'Test' if 1 == 1
Wobei hoffentlich value auf 'Test' gesetzt wird, wenn die Bedingung (1 == 1) wahr ist. Und damit wollte ich auf mehrere Bedingungen testen, um verschiedene Variablen einzustellen, wie zum Beispiel:
value = ('test' if 1 == 1, 'testtwo' if 2 == 2)
Und so weiter für ein paar Bedingungen. Ist das möglich?
Dies ist das, was dem, was Sie suchen, am nächsten kommt:
value = 'Test' if 1 == 1 else 'NoTest'
Ansonsten gibt es nicht viel anderes.
Sie können auch tun:
value = (1 == 1 and 'test') or (2 == 2 and 'testtwo') or 'nope!'
Ich bevorzuge diesen Weg: D
value = [1, 2][1 == 1]
;)
... nun, ich denke, das würde auch funktionieren: value = ['none true', 'one true', 'both true'][(1 == 1) + (2 == 2)]
Nicht gerade gute Programmierpraxis oder lesbarer Code, aber zumindest amüsant und kompakt. Python behandelt Boolesche Werte als Zahlen, also ist True 1 und False 0. [1, 2][True] = 2
, [1, 2][False] = 1
Und [1, 2, 3][True + True] = 3