Mengapa Mengubah Suai Salinan Pembolehubah Python Mengubah Yang Asal?

Patricia Arquette
Lepaskan: 2024-11-08 17:33:02
asal
655 orang telah melayarinya

Why Does Modifying a Copy of a Python Variable Change the Original?

Python: Mengubah Suai Salin Mempengaruhi Pembolehubah Asal

S: Apabila mencipta dan mengubah suai salinan pembolehubah, mengapa pembolehubah asal turut berubah ?

J: Dalam Python, pembolehubah ialah rujukan kepada objek, bukan objek itu sendiri. Menetapkan satu pembolehubah kepada yang lain mencipta rujukan baharu yang menunjuk kepada objek yang sama. Oleh itu, apabila anda mengubah suai salinan, anda sebenarnya mengubah objek asal.

Sebagai contoh, pertimbangkan kod:

org_list = ['y', 'c', 'gdp', 'cap']
copy_list = org_list

copy_list.append('hum')
Salin selepas log masuk

Ini menambahkan 'hum' pada copy_list, dan kerana ia merujuk senarai yang sama seperti org_list, org_list juga berubah.

Untuk membuat salinan bebas, gunakan penghirisan:

copy_list = org_list[:]
Salin selepas log masuk

Di sini, operator slice ([:]) mencipta salinan baharu senarai itu. Kini, anda boleh mengubah suai copy_list tanpa menjejaskan org_list. Kaedah ini boleh digunakan pada jenis pembolehubah lain, seperti bingkai data panda.

Atas ialah kandungan terperinci Mengapa Mengubah Suai Salinan Pembolehubah Python Mengubah Yang Asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan