Python条件变量设置

时间:2011-11-14 00:51:59

标签: python variables if-statement conditional-statements

出于某种原因,我不记得怎么做了 - 我相信有一种方法可以在Python中设置变量,如果条件为真的话?我的意思是:

 value = 'Test' if 1 == 1

如果条件(1 == 1)为真,则希望将 value 设置为'Test'。有了这个,我打算测试多个条件来设置不同的变量,如:

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

等等只是为了几个条件。这可能吗?

4 个答案:

答案 0 :(得分:43)

这是你最接近你想要的东西:

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

否则,没有别的。

答案 1 :(得分:1)

您也可以这样做:

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

我更喜欢这种方式:D

答案 2 :(得分:0)

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

答案 3 :(得分:-1)

少见但美观的术语:

value = ("No Test", "Test")[1 == 1]