Python တွင် Object များကို Parameter အဖြစ် လက်ဆင့်ကမ်းခြင်း

Object များ (list များ၊ set များ၊ tuple များ၊ dictionary များ) ပါဝင်သည့် variable များကို function များသို့ reference အားဖြင့် လက်ဆင့်ကမ်းသည်။ လက်ဆင့်ကမ်းလိုက်သော variable ၏ ပထမအရာဝတ္ထုကို အံ့ဖွယ်သင်္ကေတအဖြစ် ပြောင်းလဲရန် function အတွင်းရှိ code ကို ပြန်ရေးကြပါစို့။ function အောက်တွင် list တစ်ခုဖြစ်သည့် တန်ဖိုးရှိသော variable တစ်ခုကို ကြေညာပါမည်။

pythondef func(tst):
  tst[0] = '!'
  print(tst)
  
lst = [1, 2, 3, 4, 5]

List များကို reference အားဖြင့် လက်ဆင့်ကမ်းသောကြောင့်၊ function ကို ခေါ်သောအခါ global scope တွင်ရှိသော lst ၏ တန်ဖိုးသည်လည်း ပြောင်းလဲသွားမည်။

pythonfunc(lst) # ['!', 2, 3, 4, 5] ကို ထုတ်ပြမည်
print(lst) # ['!', 2, 3, 4, 5] ကို ထုတ်ပြမည်
Задание 1

အောက်ပါ code ကို လုပ်ဆောင်ပါက ရလဒ်မည်သို့ ဖြစ်မည်နည်း။

pythondef func(lst):
  lst[0] = '!'
  
lst = [1, 2, 3, 4, 5]
func(lst)

print(lst)
Задание 2

အောက်ပါ code ကို လုပ်ဆောင်ပါက ရလဒ်မည်သို့ ဖြစ်မည်နည်း။

pythondef func(lst):
  lst[0] = '!'
  
lst = [1, 2, 3, 4, 5]
lst = func(lst)

print(lst)
Задание 3

အောက်ပါ code ကို လုပ်ဆောင်ပါက ရလဒ်မည်သို့ ဖြစ်မည်နည်း။

pythondef func(lst):
  lst = '!'

lst = [1, 2, 3, 4, 5]
func(lst[0])

print(lst)
Задание 4

အောက်ပါ code ကို လုပ်ဆောင်ပါက ရလဒ်မည်သို့ ဖြစ်မည်နည်း။

pythondef func(dct):
  for key in dct.keys():
    dct[key] += 2
  
dct = {
  'a': 1,
  'b': 2,
  'c': 3,
}

func(dct)
print(dct)