Penghantaran Objek sebagai Parameter dalam Python
Pembolehubah yang mengandungi objek (senarai, set, tupel, kamus) dalam fungsi disampaikan melalui rujukan. Mari kita tulis semula kod dalam fungsi supaya elemen pertama pembolehubah yang disampaikan ditukar kepada tanda seru. Dan di bawah fungsi, isytiharkan pembolehubah yang nilainya ialah senarai:
def func(tst):
tst[0] = '!'
print(tst)
lst = [1, 2, 3, 4, 5]
Oleh kerana senarai disampaikan melalui rujukan,
apabila fungsi dipanggil, nilai lst dalam
skop global juga akan berubah:
func(lst) # akan output ['!', 2, 3, 4, 5]
print(lst) # akan output ['!', 2, 3, 4, 5]
Apakah hasil pelaksanaan kod berikut:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
func(lst)
print(lst)
Apakah hasil pelaksanaan kod berikut:
def func(lst):
lst[0] = '!'
lst = [1, 2, 3, 4, 5]
lst = func(lst)
print(lst)
Apakah hasil pelaksanaan kod berikut:
def func(lst):
lst = '!'
lst = [1, 2, 3, 4, 5]
func(lst[0])
print(lst)
Apakah hasil pelaksanaan kod berikut:
def func(dct):
for key in dct.keys():
dct[key] += 2
dct = {
'a': 1,
'b': 2,
'c': 3,
}
func(dct)
print(dct)