在 Python 中操作字典時,會出現在迭代鍵時刪除項目的問題。以下是如何有效實現此目的。
在Python 3 中,您可以迭代從keys() 方法取得的鍵列表:
<code class="python">for k in list(mydict.keys()): if mydict[k] == 3: del mydict[k]</code>
<code class="python">for k in mydict.keys(): if k == 'two': del mydict[k]</code>
在Python 2 中,iterkeys() 方法傳回一個迭代器而不是列表。因此,在迭代 iterkeys() 時修改字典會引發執行時期錯誤。相反,使用keys()方法取得鍵列表:
<code class="python">for k, v in mydict.items(): if v == 3: del mydict[k]</code>
要根據項目值進行刪除,請迭代items()方法:
記住在迭代過程中修改字典時要小心,因為它可能會破壞迭代過程。以上是可以在迭代期間從 Python 字典中刪除項目嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!