首頁 >後端開發 >Python教學 >如何在 Python 列表推導式中使用 if-else 語句?

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

Susan Sarandon
Susan Sarandon原創
2024-11-05 09:35:02607瀏覽

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