在Python 中,列表推導式提供了一種簡潔的方法,可以在應用某些條件時基於現有的可迭代物件建立新列表。當嘗試比較兩個可迭代物件並僅列印兩個清單中存在的項目時,可能會遇到以下錯誤:
print([ y if y not in b for y in a])
上面的程式碼旨在迭代第一個可迭代物件(a ) 並列印項目在第二個可迭代(b) 中找不到。但是,由於 if 語句的放置不正確,會引發「無效語法」錯誤。
if 語句的列表推導式的正確語法是將 for 子句放在 if 條件之前。因此,實現所需結果的正確代碼是:
[y for y in a if y not in b]
或者,如果目標是為第二個可迭代中未找到的項目列印不同的值,則可以使用if-else 三元運算符:
[y if y not in b else other_value for y in a]
以上是如何在 Python 列表推導式中使用 If 語句?的詳細內容。更多資訊請關注PHP中文網其他相關文章!