Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengalih keluar Elemen daripada Kamus Python: Del atau Shallow Copy?

Bagaimana untuk mengalih keluar Elemen daripada Kamus Python: Del atau Shallow Copy?

Patricia Arquette
Patricia Arquetteasal
2024-10-26 08:55:03464semak imbas

How to Remove Elements from a Python Dictionary: Del or Shallow Copy?

Padamkan Elemen daripada Kamus

Apabila bekerja dengan kamus dalam Python, mungkin tiba masanya anda perlu mengalih keluar elemen. Ini boleh dicapai dalam dua cara:

1. Mengubah suai Kamus Asal

Menggunakan pernyataan del, anda boleh terus mengalih keluar elemen daripada kamus, dengan itu mengubah suai kamus asal:

<code class="python">del d[key]</code>

di mana d ialah kamus dan kunci ialah kunci elemen yang hendak dialih keluar.

2. Dapatkan Kamus Baharu tanpa Unsur

Untuk mendapatkan kamus baharu dengan elemen dialih keluar, tanpa mengubah suai kamus asal, anda boleh menggunakan kaedah berikut:

<code class="python">def removekey(d, key):
    r = dict(d)
    del r[key]
    return r</code>

Fungsi ini mula-mula mencipta salinan kamus asal d menggunakan pembina dict(). Kemudian, ia mengalih keluar kunci yang ditentukan daripada salinan dan mengembalikan salinan r yang diubah suai sebagai kamus baharu.

Nota:

  • Pembina dict() melakukan salinan cetek, bermakna perubahan yang dibuat pada kamus baharu tidak akan menjejaskan kamus asal dan begitu juga sebaliknya.
  • Untuk kamus besar, membuat salinan untuk setiap operasi pemadaman mungkin tidak cekap. Pertimbangkan untuk menggunakan struktur data yang berbeza, seperti HAMT (trie dipetakan tatasusunan cincang), untuk penyingkiran elemen yang cekap.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar Elemen daripada Kamus Python: Del atau Shallow Copy?. 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