python - 如何在 Python 中将 if/else 压缩为一行?

标签 python

Possible Duplicate:
Python Ternary Operator
Putting a simple if-then statement on one line

有没有办法在 Python 中将 if/else 语句压缩为一行?
我经常看到各种各样的捷径,我怀疑它也可以在这里应用。

最佳答案

Python 执行“三元”表达式的方式示例:

i = 5 if a > 7 else 0

翻译成

if a > 7:
   i = 5
else:
   i = 0

这实际上在使用列表推导时派上用场,或者有时在返回语句中,否则我不确定它对创建可读代码有多大帮助。

在最近的这个 SO 问题 better way than using if-else statement in python 中详细讨论了可读性问题。 .

它还包含各种其他聪明(并且有些混淆)方法来完成相同的任务。仅基于这些帖子就值得一读。

关于python - 如何在 Python 中将 if/else 压缩为一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11529273/

相关文章:

python - 如何从 matplotlib 中删除工具栏按钮

python - 使用ElementTree的findall()来匹配元素的文本

python - 如何获取数据框中的事件频率和每个事件的频率?

python - 有条件地删除重复项 pandas python

python - 使用解析器模块检查 Python 3 源代码中的严重错误

python - 来自 BioPython 的 codeml 永远不会完成

python - 我如何使用 Pandas 计算加权移动平均线

python - 如何从请求中覆盖 urllib3 中的respect_retry_after_header?

python - False 不应被视为 0

python - Pandas - 按位类似并计算加权平均值