為什麼在Python 循環中修改列表元素沒有結果
在用Python 遍歷列表時,許多程式設計師遇到了一個意想不到的障礙:無法透過傳統循環修改其元素。舉例說明:
儘管明顯將「foo」指派給清單元素,但清單保持不變。這種令人困惑的行為源自於 Python 處理列表循環的方式。
在幕後,Python 循環透過迭代列表的索引進行操作。在上面的範例中,對於每個索引(對應於清單中的一項),都會建立一個新的臨時變數 i。對 i 的賦值僅影響此局部變量,而不影響實際的列表元素。
要成功修改列表元素,必須使用列表理解,如提供的示例中所示:
或者,直接迭代索引:
或者,利用enumerate()函數:
透過採用這些解決方案,程式設計師可以自信地修改循環內的列表元素,避免導致列表不變的徒勞分配。
以上是為什麼直接在 Python 循環中修改列表元素不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!