Penggabungan Parameter dalam Python

Kepada fungsi yang sama, kita boleh menghantar parameter bernama dan parameter posisi secara serentak. Ini dilakukan dengan menggunakan simbol *, yang menandakan bahawa parameter yang dinyatakan di sebelah kanannya harus dianggap sebagai parameter bernama, jika nilai lalainya tidak perlu digunakan.

Mari kita cipta fungsi yang akan memaparkan semua parameter dalam konsol. Pembolehubah data akan mewakili parameter posisi biasa. Selepas simbol *, dua pembolehubah start dan end ditetapkan dengan nilai lalai. Walau bagaimanapun, apabila memanggil fungsi, kita akan menjadikan pembolehubah ini sebagai parameter bernama:

pythondef func(data, *, start=0, end=100):
  print(data, start, end)
  
func(1, start=2, end=3)

Keputusan pelaksanaan kod:

python1 2 3

Jika nilai lalai pembolehubah start dibuang dan pada masa yang sama ia dibuang sebagai parameter bernama, ralat akan dipaparkan. Ini berlaku kerana simbol * telah menganggap start sebagai pembolehubah bernama:

pythondef func(data, *, start, end=100):
  print(data, start, end)
  
func(1, 2, end=3) # akan memaparkan ralat
Задание 1

Apakah hasil pelaksanaan kod berikut:

pythondef func(num1, num2, *, num3):
  return (num1 + num2) * num3
  
print(func(2, 4, num3=3))
Задание 2

Apakah hasil pelaksanaan kod berikut:

pythondef func(num1, *, num2, num3):
  return (num1 - num2) / num3
  
print(func(12, 4, num3=5))
Задание 3

Apakah hasil pelaksanaan kod berikut:

pythondef func(*, name='user1', age='18'):
  return 'Username is ' + name + ' age is ' + age
  
print(func(name='john'))