首页  >  文章  >  后端开发  >  如何在 Python 列表推导式中使用 if-else 语句?

如何在 Python 列表推导式中使用 if-else 语句?

Susan Sarandon
Susan Sarandon原创
2024-11-05 09:35:02482浏览

How do you use if-else statements within Python list comprehensions?

列表推导式中的 If-Else

在 Python 中,列表推导式提供了一种通过迭代现有列表并对每个元素应用转换来创建新列表的紧凑方法。然而,在列表理解中编写 if-else 语句可能会很棘手。

考虑以下示例:

<code class="python">l = [22, 13, 45, 50, 98, 69, 43, 44, 1]</code>

假设您想通过将 1 添加到更大的数字来创建一个新列表大于或等于 45,5 小于 45。

尝试使用这样的 if-else 语句将其编写为列表理解:

<code class="python">[x+1 for x in l if x >= 45 else x+5]</code>

将导致语法错误。

要在列表理解中执行 if-else 操作,您可以使用三元条件运算符:

<code class="python">[x+1 if x >= 45 else x+5 for x in l]</code>

此表达式的计算结果为:

<code class="python">[27, 18, 46, 51, 99, 70, 48, 49, 6]</code>

在此示例中,对于每个大于或等于 45 的 x 执行“x 1”,对于每个小于 45 的 x 执行“x 5”。

以上是如何在 Python 列表推导式中使用 if-else 语句?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn