Ixtiyoriy miqdordagi parametrlar (Переменное число параметров)
Ba’zan funksiyani ixtiyoriy miqdordagi parametr qabul qila oladigan holda e’lon qilish kerak bo’lishi mimkin. Bunga yulduzchalar yordamida erishishimiz mumkin.
Misol: (total.py nomi bilan saqlang)
def total(initial=5, *numbers, **keywords):
count = initial
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, vegetables=50, fruits=100))
Natija:
$ python total.py
166
Bu qanday ishlaydi:
Agar biz parametrni yulduzcha (*) bilan e’lon qiladigan (misol uchun param) bo’lsak, shu pozitsiyadan boshlab oxirigacha bo’lgan barcha pozitsiya argumentlari param nomlik kortejga yig’iladi. Bizning holatda numbers kortejida (1, 2, 3) qiymat mavjud bo’ladi.
Shunga o’xshash agar biz ikkita yulduzcha (**) bilan parametrni e’lon qiladigan (misol uchun param) bo’lsak shu pozitsiyadan boshlab oxirigacha bo’lgan kalit argumentlar param nomli lug’at(словарь)ga yig’iladi. Bizning holatda keywords lug’atida {‘vegetables’: 50, ‘fruits’: 100} qiymat mavjud bo’ladi.
Biz kortej va lug’atlarni imkon qadar keyingi darslarimizda o’rganamiz.
Do'stlaringiz bilan baham: |