Bagaimana untuk Mengubah Suai Senarai Dalam Fungsi dalam Python: Lulus Rujukan atau Pengubahsuaian Di Tempat?

Patricia Arquette
Lepaskan: 2024-10-27 06:12:03
asal
744 orang telah melayarinya

How to Modify a List Within a Function in Python: Pass by Reference or In-Place Modification?

Mengubah suai Senarai di dalam Fungsi

Apabila bekerja dengan parameter senarai dalam fungsi, rujukan dihantar ke fungsi menghala ke senarai asal. Sebarang pengubahsuaian yang dibuat pada pembolehubah list_arg dalam fungsi terhad kepada skop setempatnya dan tidak akan menjejaskan senarai asal.

Untuk memintas isu ini dan mengubah suai senarai asal, seseorang perlu menetapkan elemen secara langsung pada senarai bukannya menugaskan semula keseluruhan senarai kepada nilai baharu. Berikut ialah contoh:

def function1(list_arg):
   a = function2()    # function2 returns an array of numbers
   list_arg[:] = list(a)

list1 = [0] * 5
function1(list1)
print(list1)  # [1, 2, 3, 4, 5]
Salin selepas log masuk

Dalam kod yang diubah suai ini, kami menggunakan tatatanda keratan list_arg[:] untuk memperuntukkan elemen list(a) kepada senarai asal, mengubah suai senarai yang ada dengan berkesan.

Perlu ambil perhatian bahawa walaupun pengubahsuaian di tempat mungkin kelihatan mudah, ia boleh menjadi sukar untuk difahami dan boleh menyebabkan kekeliruan bagi pembangun yang mengekalkan kod tersebut. Penugasan semula eksplisit biasanya lebih disukai untuk kejelasan dan kebolehbacaan.

Atas ialah kandungan terperinci Bagaimana untuk Mengubah Suai Senarai Dalam Fungsi dalam Python: Lulus Rujukan atau Pengubahsuaian Di Tempat?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!