Python:拥有三元运算符的有效方法[重复]

Posted

技术标签:

【中文标题】Python:拥有三元运算符的有效方法[重复]【英文标题】:Python: Efficient way of having ternary operator [duplicate] 【发布时间】:2019-03-19 12:10:07 【问题描述】:

我试图找到在 python 中使用三元运算符的最佳方法,但没有找到确凿的信息。如下所示,使用 lambda 是最好的方法吗?在一行中执行以下操作的最佳方法是什么?

return (lambda: "Yes", lambda: "No") ['hello' == 'hello']()

【问题讨论】:

【参考方案1】:

如果你使用 If-else,Python 确实有一个三元运算符:

return 'Yes' if 'hello' == 'hello' else 'No'

你也可以使用字典或列表,但我不明白你为什么会这样做:

return ['No', 'Yes']['hello' == 'hello']

return 1: 'Yes'.get('hello' == 'hello', 'No')

【讨论】:

如果我在我从事的任何项目中发现了最后两个混淆中的任何一个,我都会对把它放在那里的人有强烈的话语权......

以上是关于Python:拥有三元运算符的有效方法[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python三元运算[重复]

Python:集合函数三元运算符

在JS中编写三元运算符的更短方法[重复]

kotlin中的三元运算符[重复]

如何在python中编写三元条件运算符? [复制]

有没有更好(更干净)的方法来使用三元运算符(不重复代码)编写这个 JS 代码?