【发布时间】:2011-03-06 16:48:39
【问题描述】:
C 和许多其他语言都有conditional (AKA ternary) 运算符。这允许您根据条件的真实性在两个值之间做出非常简洁的选择,这使得表达式(包括赋值)非常简洁。
我想念这个,因为我发现我的代码有很多条件赋值,在 Python 中需要四行:
if condition:
var = something
else:
var = something_else
而在 C 中它会是:
var = condition ? something : something_else;
在一个文件中写一两次是可以的,但如果你有很多条件赋值,行数就会爆炸,最糟糕的是,它们会吸引眼球。
我喜欢条件运算符的简洁性,因为它可以防止我认为非策略性的事情在浏览代码时分散我的注意力。
那么,在 Python 中,您是否可以使用一种技巧将赋值放在一行上,以近似我概述的条件运算符的优点?
【问题讨论】:
标签: python c language-features