简单的如果

可能重复:
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

我在问一般的语法。


这更具体地说是三元运算符表达式,而不是if-then,下面是python语法

value_when_true if condition else value_when_false

更好的例子:(谢谢伯恩斯先生)

'Yes' if fruit == 'Apple' else 'No'

现在与赋值和对比,如果语法

fruit = 'Apple'
isApple = True if fruit == 'Apple' else False

VS

fruit = 'Apple'
isApple = False
if fruit == 'Apple' : isApple = True

count = 0 if count == N else N+1

- 三元操作符。 虽然我会说你的解决方案比这更可读。


而且,你仍然可以使用“普通”如果语法并将其与冒号混合成一行。

if i > 3: print("We are done.")

要么

field_plural = None
if field_plural is not None: print("insert into testtable(plural) '{0}'".format(field_plural)) 
链接地址: http://www.djcxy.com/p/7381.html

上一篇: Putting a simple if

下一篇: Responding to "write" messages