Python中怎样简单地用一行写if-then语句?

2018-04-11  本文已影响0人  clhon

类似的问题:
Python Ternary Operator

我只是进入Python,我真的很喜欢语法的简洁。但是,是否有更简单的方法来编写if-then语句,以便它适合一行?
例如:

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

有没有更简单的写这个方法?我的意思是,在Objective-C中,我会把它写成:

count = count == N ? 0 : count + 1;

Python有什么类似的东西吗?
更新
我知道在这种情况下,我可以使用count == (count + 1) % N
我在问一般的语法。

回答:

这更像是一个ternary operator表达式,而不是if-then,这是python语法

value_when_true if condition else value_when_false

更好的例子:(感谢Mr. Burns

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

和赋值语句一起使用:

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

对比:

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

翻译整理: codewenda.com
英文原文:stackoverflow

上一篇下一篇

猜你喜欢

热点阅读