#14 lug'at bilan tanishuv



Download 1,11 Mb.
bet22/29
Sana08.07.2022
Hajmi1,11 Mb.
#757720
1   ...   18   19   20   21   22   23   24   25   ...   29
Bog'liq
piton

*args USULI
Agar funksiya qabul qiladigan parametrlar soni noaniq bo'lsa, va parametrlar yagona qiymatlar ko'rinishida uzatilsa, funksiya yaratishda argumentdan avval yulduzcha qo'yiladi (*arguments).
Quyidagi misolni ko'raylik. summa() nomli funksiyamiz istalgancha sonlarni qabul qilib oladi, va ularning yi'gindisi hisoblaydi:
1
def summa(*sonlar):
2
"""Kiritilgan sonlar yig'indisini hisoblaydigan funksiya"""
3
yigindi = 0
4
for son in sonlar:
5
yigindi += son
6
return yigindi
Copied!
Bu funksiyani istalgancha parametr bilan chaqirish mumkin:
1
print(summa(1,2))
Copied!
Natija: 3
1
print(summa(1,2,3,4,5))
Copied!
Natija: 15
*args usulida, bacha uzatilgan parametrlar (bir dona bo'lsa ham) funksiya ichida o'zgarmas ro'yxatga (tuple) joylanadi. Bundan kelib chiqib, yuqoridagi funksiyamizni yanada soddalashtirib yozishimiz mumkin:
1
def summa(*sonlar):
2
"""Kiritilgan sonlar yig'indisini hisoblaydigan funksiya"""
3
return sum(sonlar)
4

5
print(summa(4,5,6,7))
Copied!
Natija: 22
Agar funksiya bir nechta argument qabul qilsa, *args argument doim oxirida yoziladi:
1
def summa(x,y,*sonlar):
2
"""Kiritilgan sonlar yig'indisini hisoblaydigan funksiya"""
3
return x+y+sum(sonlar)
Copied!
Yuqoridagi funksiyamiz kamida 2 ta parametr qabul qiladi (x va y) va birinchi ikki argumentlar majburiy argumentlardir.
1
print(summa(2))
Copied!
Netija: TypeError: summa() missing 1 required positional argument: 'y'
**kwargs USULI
Agar funksiyaga kalit so'z - qiymat ko'rinishidagi argumentlarni uzatish talab qilinsa, va bunday parametrlar soni noma'lum bo'lsa, argument oldidan ikkita yulduzcha qo'yiladi (**kwargs).
**kwargs — keyword arguments (kalit so'zli argumentlar)
1
def avto_info(kompaniya,model,**malumotlar):
2
"""Avto haqidagi ma'lumotlarni lug'at ko'rinishdia qaytaruvchi funksiya"""
3
malumotlar['kompaniya']=kompaniya
4
malumotlar['model']=model
5
return malumotlar
Copied!
Yuqoridagi funksiyamiz kompaniya va model degan ikki qiymatni qabul qiladi, undan keyin esa funksiyaga istalgancha parametr uzatish mumkin. Bunday funksiyaga parametrlar kalitso'z=qiymat ko'rinishida uzatiladi.
Funksiya ichida avval foydalanuvchi kiritgan qo'shimcha qiymatlardan iborat malumotlar deb nomlangan lug'at shakllantiriladi. Undan keyin esa majburiy parametrlarni lug'atga qo'shamiz.
1
avto1 = avto_info("GM", "malibu", rang='qora', yil=2018)
2
avto2 = avto_info("Kia", "K5", rang='qizil', narh=35000)
Copied!
1
print(avto2)
Copied!
Natija: {'rang': 'qizil', 'narh': 35000, 'kompaniya': 'Kia', 'model': 'K5'}
AMALIYOT

  1. 1.

Istalgancha sonlarni qabul qilib, ularning ko'paytmasini qaytaruvchi funksiya yozing

  1. 2.

Talabalar haqidagi ma'lumotlarini lug'at ko'rinishida qaytaruvchi funkisya yozing. Talabaning ismi va familiyasi majburiy argument, qolgan ma'lumotlar esa ixtiyoriy ko'rinishda istalgancha berilishi mumkin bo'lsin.

Download 1,11 Mb.

Do'stlaringiz bilan baham:
1   ...   18   19   20   21   22   23   24   25   ...   29




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish