将一个简单的if-then-else语句放在一行中
可能的重复: Python三元操作符
我刚刚开始接触Python,我非常喜欢其语法的简洁性。但是,有没有一种更简单的方法来写一个if
-then
-else
语句,使其适合在一行中出现?
比如说。
if count == N:
count = 0
else:
count = N + 1
有什么更简单的写法吗?我的意思是,在Objective-C中我会写成这样。
count = count == N ? 0 : count + 1;
在Python中是否有类似的东西?
更新
我知道在这种情况下,我可以使用count == (count + 1) % N
。
我想问的是一般的语法。
772
5
这更像是一个三元运算符的表达,而不是一个if-then,这里是python的语法。
更好的例子:(感谢Burns先生)。
'是的'如果水果=='苹果'否则'不'
。现在有了赋值,并与if语法对比。
vs
此外,你仍然可以使用"普通"。
if
语法,并用冒号将其合并为一行。或
- 的三元运算符。虽然我说你的解决方案比这更有可读性。
一般的三元句法。
另一种方式可以是。
例如
这在选择一个分支之前会评估两个分支。如果只评估所选分支,则
例如。
用你的代码,它将成为。