当前位置: 首页 > 面试题库 >

蟒蛇?(条件/三元)运算符,用于分配

屠和洽
2023-03-14
问题内容

C和许多其他语言具有条件(也称为三元)运算符。这使您可以根据条件的真实性在两个值之间进行非常简洁的选择,这使表达式(包括赋值)非常简洁。

我之所以错过了,是因为我发现我的代码有很多条件分配,在Python中需要四行代码:

if condition:
    var = something
else:
    var = something_else

而在C中它将是:

var = condition? something: something_else;

在文件中执行一两次是可以的,但是如果您有很多条件分配,则行数会爆炸,最糟糕的是吸引他们。

我喜欢条件运算符的简洁性,因为它使我认为略微的事情不会在浏览代码时分散我的注意力。

因此,在Python中,您是否可以使用任何技巧将赋值分配到一行上,以近似我概述它们时条件运算符的优点?


问题答案:

Python有这样一个运算符:

variable = something if condition else something_else

或者,尽管不推荐使用(请参阅@karadoc的评论):

variable = (condition and something) or something_else


 类似资料:
  • 三元运算符 三元运算符 ? 应该只用在它能让代码更加清楚的地方。 一个条件语句的所有的变量应该是已经被求值了的。类似 if 语句,计算多个条件子句通常会让语句更加难以理解。或者可以把它们重构到实例变量里面。 推荐: result = a > b ? x : y; 不推荐: result = a > b ? x = c > d ? c : d : y; 当三元运算符的第二个参数(if 分支)返回和条

  • 问题内容: 如果Python没有三元条件运算符,是否可以使用其他语言构造来模拟一个? 问题答案: 它是在2.5版中添加的。表达式语法为: 第一被评估,则恰好中的任一个a或b进行评估并返回基于所述布尔值。如果为,则被评估并返回但被忽略,否则被评估为返回但被忽略。 这允许发生短路,因为仅当评估为时才进行评估,而b根本不评估,而当为 评估时,仅当评估时就完全不评估。 例如: 注意条件是表达式,而不是语句

  • 如果Python没有三元条件运算符,是否可以使用其他语言构造来模拟一个?

  • 在Kotlin中,这个表达式的等价物是什么? 这不是Kotlin中的有效代码。

  • 本文向大家介绍Python条件表达式(或“三元运算符”),包括了Python条件表达式(或“三元运算符”)的使用技巧和注意事项,需要的朋友参考一下 示例 三元运算符用于内联条件表达式。最好在易于阅读的简单,简洁的操作中使用。 参数的顺序与许多其他语言(例如C,Ruby,Java等)不同,当不熟悉Python的“令人惊讶”行为的人使用它时,它们可能会导致错误(它们可能会颠倒顺序)。 有些人认为它“笨

  • 如何在matplotlib中绘制多个条形图,当我多次尝试调用bar函数时,它们重叠,如下图所示,最高值红色只能看到。如何在x轴上绘制带有日期的多个条形图? 到目前为止,我尝试了这个: 我得到了这个: 结果应该是这样的,但是日期在x轴上,横条彼此相邻: