Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah Anda Memadam Item daripada Kamus Python Semasa Lelaran?

Bolehkah Anda Memadam Item daripada Kamus Python Semasa Lelaran?

Susan Sarandon
Susan Sarandonasal
2024-11-02 03:31:30621semak imbas

Can You Delete Items from a Python Dictionary During Iteration?

Bolehkah Anda Mengalih Keluar Item daripada Kamus semasa Lelaran?

Apabila memanipulasi kamus dalam Python, persoalan memadam item semasa mengulang kekunci timbul. Begini cara untuk mencapai matlamat ini dengan berkesan.

Pilihan untuk Python 3

Dalam Python 3, anda boleh mengulangi senarai kunci yang diperoleh daripada kaedah keys():

<code class="python">for k in list(mydict.keys()):
    if mydict[k] == 3:
        del mydict[k]</code>

Pilihan untuk Python 2

Dalam Python 2, kaedah iterkeys() mengembalikan iterator dan bukannya senarai. Oleh itu, mengubah suai kamus semasa mengulangi iterkeys() menimbulkan RuntimeError. Sebaliknya, gunakan kaedah keys() untuk mendapatkan senarai kunci:

<code class="python">for k in mydict.keys():
    if k == 'two':
        del mydict[k]</code>

Untuk pemadaman berdasarkan nilai item, ulangi kaedah item():

<code class="python">for k, v in mydict.items():
    if v == 3:
        del mydict[k]</code>

Ingat untuk berhati-hati apabila mengubah suai kamus semasa lelaran, kerana ia boleh mengganggu proses lelaran.

Atas ialah kandungan terperinci Bolehkah Anda Memadam Item daripada Kamus Python Semasa Lelaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn