|
Ma’lumotlar tuzilmasi va algoritmlar” fanidan 2- amaliy ishni bajarishga namuna
|
bet | 3/4 | Sana | 21.01.2024 | Hajmi | 120,36 Kb. | | #142656 |
Bog'liq MTA 2-amaliy ish 2022... return a + b + c
...
>>> func(1, 2) # a = 1, b = 2, c = 2 (по умолчанию)
5
>>> func(1, 2, 3) # a = 1, b = 2, c = 3
6
>>> func(a=1, b=3) # a = 1, b = 3, c = 2
6
>>> func(a=3, c=6) # a = 3, c = 6, b не определен
Traceback (most recent call last):
File "", line 1, in
func(a=3, c=6)
TypeError: func() takes at least 2 arguments (2 given)
Funksiya, shuningdek, pozitsion argumentlarning o'zgaruvchan sonini olishi mumkin, keyin * ism oldiga qo'yiladi:
>>> def func(*args):
... return args
...
>>> func(1, 2, 3, 'abc')
(1, 2, 3, 'abc')
>>> func()
()
>>> func(1)
(1,)
Misoldan ko'rinib turibdiki, args - bu funksiyaga berilgan barcha argumentlarning yig'indisi va siz o'zgarmaydigan bilan xuddi tuple kabi ishlashingiz mumkin.
Funksiya ixtiyoriy ravishda nomlangan argumentlarni qabul qilishi mumkin, keyin ** ism oldiga qo'yiladi:
>>> def func(**kwargs):
... return kwargs
...
>>> func(a=1, b=2, c=3)
{'a': 1, 'c': 3, 'b': 2}
>>> func()
{}
>>> func(a='python')
{'a': 'python'}
Kvarg o'zgaruvchisida biz lug'atni saqlaymiz, u bilan biz xohlagan narsani qila olamiz.
Funksiya parametrlari. Funksiyalar parametrlar, ya'ni funksiyaga berilishi mumkin bo'lgan qiymatlar qabul qila oladi va ular ustuda biror amal bajarishi mumkin. Bu parametrlar o'zgaruvchilarga o'xshaydi. Faqat ulardan farqi bu o'zgaruvchilarning qiymati funksiyani chaqirish vaqtida o'rnatiladi. Funksiya ish boshlagan vaqtda bularga qiymat biriktirilgan bo'ladi.
Parametrlar funksiya aniqlanayotgan vaqtda qavs ishida vergul bilan ajratilgasn holda ko'rsatiladi. Ularga qiymatni funksiyani chaqirganimizda biriktiramiz. Ushbu atamalarga e'tibor bering: funksiya e'lon qilinayotgan vaqtda ko'rsatilgan nomlar parametrlar, funksiyani chaqirayotganimizda unga berilgan qiymatlar esa argumentlar deyiladi.
Misol: ( func_param.py nomi bilan saqlang)
def printMax(a, b):
if a > b:
print(a, 'katta')
elif a == b:
print(a, 'teng', b)
else:
print(b, 'katta')
printMax(3, 4) # qiymatlarni to'g'ridan-to'g'ri berish
|
| |