可能重复:Python三元运算符
我刚刚进入Python,我真的很喜欢语法的简洁性 . 但是,是否有更简单的方法来编写 if
- then
- else
语句,以便它适合一行?
例如:
if count == N:
count = 0
else:
count = N + 1
有没有更简单的方法来写这个?我的意思是,在Objective-C中我会把它写成:
count = count == N ? 0 : count + 1;
Python有类似的东西吗?
Update
我知道在这个例子中我可以使用 count == (count + 1) % N
.
我问的是一般语法 .
5 回答
它会变成你的代码片段,
那更具体的是ternary operator表达式而不是if-then,这是python语法
Better Example: (谢谢Mr. Burns)
'Yes' if fruit == 'Apple' else 'No'
Now with assignment and contrast with if syntax
vs
此外,您仍然可以使用“普通”if语法,并使用冒号将其合并为一行 .
要么
一般三元语法:
另一种方式可以是:
例如:
这会在选择之前评估两个分支 . 仅评估所选分支:
例如 . :