Pythonda Parametrlarni Birlashtirish
Xuddi shu funksiyaga bir vaqtning o'zida
nomlangan va pozitsion parametrlarni uzatish mumkin.
Buning uchun * belgisi qo'llaniladi,
bu esa, undan keyin ko'rsatilgan parametrlarni
ularning standart qiymatlari ishlatilmasa,
nomlangan deb hisoblash kerakligini bildiradi.
Keling, barcha parametrlarni konsolga chiqaradigan
funksiya yarataylik. data o'zgaruvchisi
oddiy pozitsion parametrni bildiradi. Keyin,
* belgisidan so'ng, standart qiymatlarga ega
bo'lgan start va end o'zgaruvchilari
berilgan. Biroq, funksiyani chaqirishda bu
o'zgaruvchilarni nomlangan qilamiz:
def func(data, *, start=0, end=100):
print(data, start, end)
func(1, start=2, end=3)
Kodni bajarish natijasi:
1 2 3
Agar start o'zgaruvchisining standart qiymatini olib tashlasak
va shu bilan birga uni nomlangan parametr sifatida ham olib tashlasak,
xatolik paydo bo'ladi.
Buning sababi, * belgisi allaqachon
start ni nomlangan o'zgaruvchi sifatida belgilagan:
def func(data, *, start, end=100):
print(data, start, end)
func(1, 2, end=3) # xatolik chiqaradi
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(num1, num2, *, num3):
return (num1 + num2) * num3
print(func(2, 4, num3=3))
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(num1, *, num2, num3):
return (num1 - num2) / num3
print(func(12, 4, num3=5))
Quyidagi kodni bajarish natijasi qanday bo'ladi:
def func(*, name='user1', age='18'):
return 'Username is ' + name + ' age is ' + age
print(func(name='john'))