Python'da funksiya nima va qanday yoziladi
Bir xil kodni dasturning turli joyida qayta-qayta yozayotganingizni sezsangiz — bu funksiya vaqti keldi degani. Funksiya bir bo’lak kodga nom berib, uni istagancha marta ishlatish imkonini beradi. Bu darsda funksiya yaratish va chaqirishni o’rganamiz.
Quyidagi kodni o’zingiz shu yerda — hech narsa o’rnatmasdan — ishga tushirishingiz mumkin. Uni o’zgartirib, “Ishga tushirish” tugmasini bosing:
Funksiya nima uchun kerak
Aytaylik, uch joyda foydalanuvchini salomlashimiz kerak. Funksiyasiz uni har safar qayta yozamiz. Funksiya bilan esa bir marta yozib, nom bilan chaqiramiz. Bu kodni qisqartiradi va bir joyda tuzatsangiz, hamma joyda tuzaladi degani.
def — funksiya yaratish
Funksiya def (define — aniqlash) kalit so’zi bilan yaratiladi:
def salomlash():
print("Assalomu alaykum!")
print("Xush kelibsiz.")
Bu kodni ishga tushirsangiz — hech narsa chiqmaydi. Chunki funksiyani aniqlash uni bajarish emas. Biz shunchaki “salomlash” degan retseptni yozib qo’ydik, hali chaqirmadik.
E’tibor bering: def qatori funksiya nomi, qavs () va ikki nuqta (:)
bilan tugaydi. Funksiya tanasi — if va
sikllardagi kabi — chekinish bilan yoziladi.
Funksiyani chaqirish
Funksiya ishga tushishi uchun uni chaqirish kerak — nomini yozib, qavs qo’yamiz:
Bir marta yozildi, ikki marta chaqirildi — natija ikki marta chiqdi. Aynan shu funksiyaning qiymati: yozasan bir marta, ishlatasan cheksiz.
Funksiyaga ma’lumot berish
Doim bir xil salom cheklangan. Funksiyaga qavs ichida ma’lumot berish mumkin — buni parametr deyiladi:
Endi bitta funksiya har xil ism bilan ishlaydi. Qavs ichidagi ism —
parametr; chaqirganda bergan "Aziz" — argument. Bu mavzuni keyingi
funksiya argumentlari darsida chuqurroq
ochamiz.
Funksiya nomlash qoidalari
- Nom ma’noli bo’lsin:
salomlash,narx_hisobla—f1,xemas. - Bir necha so’z bo’lsa, ostki chiziq bilan ajratiladi:
oquvchi_qoshish. - Nom fe’l bo’lgani ma’qul, chunki funksiya bir ish bajaradi.
- Katta harf, bo’sh joy, raqamdan boshlash mumkin emas.
Funksiyalarni birlashtirish
Funksiya ichida boshqa funksiyani chaqirish mumkin — katta masalani mayda bo’laklarga bo’lish shunday qilinadi:
hisobot ichida chiziq ikki marta chaqirildi — takrorlanadigan kod
alohida funksiyaga chiqarildi.
Amaliy mashq
Salomlashuv funksiyasini yozing:
salomlash()nomli funksiya yarating — u “Salom!” chiqarsin;- uni uch marta chaqiring;
- funksiyaga
ismparametrini qo’shib, xabarni shaxsiylashtiring; xayrlash()nomli ikkinchi funksiya yozing;- uchinchi funksiya yarating — u ichida ikkalasini ham chaqirsin.
Funksiyani e’lon qilib, chaqirmasangiz nima bo’ladi — kod ishlaydimi?
Qisqacha xulosa
- Funksiya — nom berilgan, qayta ishlatiladigan kod bloki.
def nom():bilan yaratiladi,nom()bilan chaqiriladi.- Aniqlash — bajarish emas: chaqirmasangiz, ishlamaydi.
- Chaqirishda qavsni unutmang —
nomemas,nom(). - Qavs ichidagi parametr orqali funksiyaga ma’lumot beriladi.
- Nom ma’noli va fe’l ko’rinishida bo’lsin.
Keyingi darsda funksiya argumentlari ni chuqurroq ko’ramiz: bir nechta parametr, standart qiymatlar va nomli argumentlar.