可能重复:
Python三元运算符
我刚刚进入Python,我非常喜欢语法的简洁性.然而,有没有写一个更简单的方法if- then- else语句,因此它适合在同一行?
例如:
if count == N:
count = 0
else:
count = N + 1
Run Code Online (Sandbox Code Playgroud)
有没有更简单的写作方式?我的意思是,在Objective-C中我会把它写成:
count = count == N ? 0 : count + 1;
Run Code Online (Sandbox Code Playgroud)
Python有类似的东西吗?
更新
我知道在这种情况下我可以使用count == (count + 1) % N.
我问的是一般语法.
有没有办法在Python中将if/ else语句压缩到一行?
我经常看到各种快捷方式,并怀疑它也适用于此.
这个问题的答案之一是
print len(s)>5 and 'y' or 'n'
print(len(s)>5 and 'y' or 'n') #python3
Run Code Online (Sandbox Code Playgroud)
如果长度s > 5,则'y'打印否则'n'是.请解释这是如何工作的原因.谢谢.
我知道这不是推荐的方法,但我想了解它的工作原理.