Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mencipta Salinan Benar-benar Bebas Senarai Bersarang dalam Python?

Bagaimana untuk Mencipta Salinan Benar-benar Bebas Senarai Bersarang dalam Python?

Linda Hamilton
Linda Hamiltonasal
2024-11-24 01:53:12347semak imbas

How to Create Truly Independent Copies of Nested Lists in Python?

Menyalin Senarai Bersarang: Memelihara Kemerdekaan

Apabila bekerja dengan senarai bersarang, selalunya wajar untuk membuat salinan bebas senarai, memastikan bahawa pengubahsuaian yang dibuat pada satu senarai tidak menjejaskan senarai yang lain. Ini tidak semudah dengan senarai satu dimensi, di mana salinan cetek menggunakan [:] sudah memadai.

Untuk senarai dua dimensi, pendekatan naif menggunakan [:] menghasilkan salinan cetek, di mana senarai dalaman masih dirujuk oleh kedua-dua yang asal dan salinan. Akibatnya, pengubahsuaian yang dibuat pada salinan ditunjukkan dalam yang asal.

Untuk mencapai kemerdekaan sebenar, salinan yang mendalam diperlukan. Ini melibatkan mencipta objek baharu untuk setiap elemen dalam senarai, termasuk sebarang senarai bersarang. Fungsi copy.deepcopy() menyediakan cara yang mudah untuk mencapai salinan dalam, dengan berkesan memutuskan pautan rujukan antara yang asal dan salinan.

Dengan menggunakan copy.deepcopy() seperti berikut, kami boleh mencipta salinan bebas daripada senarai dua dimensi a:

import copy
b = copy.deepcopy(a)

Kini, sebarang perubahan yang dibuat kepada b tidak akan menjejaskan a, dan sebaliknya sebaliknya.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Salinan Benar-benar Bebas Senarai Bersarang dalam Python?. 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