web-dev-qa-db-ja.com

Python条件変数設定

どういうわけかこれを行う方法を覚えていない-条件がtrueの場合、Pythonで変数を設定する方法があったと思いますか?私が意味するのはこれです:

 value = 'Test' if 1 == 1

条件(1 == 1)が真である場合にvalueを 'Test'に設定することが望ましい場合。そして、次のように、さまざまな変数を設定するための複数の条件をテストしました。

 value = ('test' if 1 == 1, 'testtwo' if 2 == 2)

いくつかの条件についても同様です。これは可能ですか?

27
SolarLune

これはあなたが探しているものに最も近いものです:

value = 'Test' if 1 == 1 else 'NoTest'

そうでなければ、他に多くはありません。

47
Donald Miner

次のこともできます。

value = (1 == 1 and 'test') or (2 == 2 and 'testtwo') or 'nope!'

私はこの方法を好む:D

2

_value = [1, 2][1 == 1]_;)

...まあ、これもうまくいくと思います:value = ['none true', 'one true', 'both true'][(1 == 1) + (2 == 2)]

正確なプログラミングの実践や読みやすいコードではありませんが、少なくとも面白くてコンパクトです。 Pythonはブール値を数値として扱うため、Trueは1、Falseは0です。_[1, 2][True] = 2_、_[1, 2][False] = 1_および_[1, 2, 3][True + True] = 3_

0
Pinja Pessi