在Python 中根據條件替換清單中的值
在Python 中,您可能會遇到需要操作清單中元素的場景列表,例如根據特定條件替換值。透過利用高效的技術,您可以有效地執行這些修改。
一種方法涉及利用列表理解。例如,如果您有一個列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 並且想要替換2 的模等於0 的元素,您可以使用以下理解:
new_items = [x if x % 2 else None for x in items]
此推導式建立一個新列表,其中每個元素都根據條件(x % 2) 檢查。如果條件為 False,則保留原始值 (x)。否則,該元素將替換為 None。
或者,您可以使用for 循環修改列表:
for index, item in enumerate(items): if not (item % 2): items[index] = None
此解決方案迭代列表,識別滿足條件的元素條件(項目% 2),然後將None 分配給這些位置。
時間複雜度分析表明,兩種方法花費的時間大致相同。在 Python 3.6.3 中,列表推導式在速度方面略優於 for 循環,而在 Python 2.7.6 中,效能相當。
因此,基於列表替換值的最有效方法on 條件是使用列表理解,因為它以清晰簡潔的方式實現所需的結果。這種技術在處理大型清單時特別有用,因為它最大限度地減少了所需的操作數量。
以上是如何根據 Python 中的條件取代清單中的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!