python三元表达式(ternary expression)允许将产生一个值的if-else块写到一行或一个表达式中,语法结构如下:

value=true-expr if condition else false-expr

其中的true-expr和false-expr可以是任何python表达式,它跟下面这种长格式的效果是一样的:

if condition:
     value=true-expr
else:
     value=false-expr

下面是具体的示例:

In [5]: a=[1, 4, -4, 2, 99]

In [6]: ['positive' if x>0 else 'negative' for x in a]
Out[6]: ['positive', 'positive', 'negative', 'positive', 'positive']

这里要注意的问题,是对产生一个值的正确理解!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐