Google Play badge

funktsiyalarni aniqlash


Funktsiyalarni aniqlash

Bu darsda biz funksiyalar bilan tanishamiz. Funktsiya - bu retsept kabi kompyuterga nima qilish kerakligini ko'rsatadigan kichik ko'rsatmalar blokidir. Funktsiyalar bizga katta muammolarni kichik qismlarga ajratishga yordam beradi. Ular bizning ishimizni osonlashtiradi va dasturlarimizni aniqroq qiladi. Bugun biz funksiyalar nima ekanligini, ularni nima uchun ishlatishimiz va ular bizga qanday qilib oddiy tarzda dasturlar yaratishda yordam berishini ko'rib chiqamiz.

Kirish

Tasavvur qiling-a, sizda har doim bir xil ishni bajaradigan o'yinchoq mashinasi bor. Bir tugmani bosganingizda, mashina qo'shiq kuylaydi. Kompyuter dasturidagi funksiya ham xuddi shunday ishlaydi. Bu siz qayta-qayta foydalanishingiz mumkin bo'lgan ko'rsatmalar to'plami. Siz funktsiyani bir marta aniqlaysiz, keyin uni ishlatishingiz kerak bo'lganda chaqirishingiz mumkin. Ushbu g'oya dasturlarni tushunishni osonlashtiradi va tezroq tuziladi.

Kundalik hayotimizda biz narsalarni qilish uchun qadamlarni bajaramiz. Misol uchun, tishlaringizni cho'tkalaganingizda yoki sendvich tayyorlaganingizda, oddiy qadamlarni tartibda bajarasiz. Funktsiya xuddi shu bosqichlarga o'xshaydi. Har safar bu ishlarni qanday bajarish kerakligini o'zingizga eslatish o'rniga, siz qadamlarni eslaysiz yoki buni siz uchun bajaradigan tugmani bosing.

Funktsiya nima?

Funktsiya - bu ma'lum bir vazifani bajaradigan kodning nomlangan blokidir. Siz uni kattaroq dasturingiz ichidagi mini-dastur sifatida tasavvur qilishingiz mumkin. Funktsiyalar bitta kichik vazifani bajarish uchun yoziladi. Ular raqamlar qo'shishlari, kimgadir salom aytishlari yoki hatto ekranda rasm chizishlari mumkin. G'oya vazifaning tafsilotlarini funksiya ichidagi yashirishdir. Shunday qilib, siz faqat vazifani bajarishingiz kerak bo'lganda funktsiyani nomi bilan chaqirishingiz kerak.

Masalan, oddiy funktsiya yorug'lik tugmasi kabi ko'rinishi mumkin. Kalitni aylantirganingizda, chiroq yonadi. Xuddi shunday, funktsiyani chaqirganingizda, kompyuter uning ichidagi amallarni bajaradi. Bu sizning ishingizni toza qiladi va har qanday muammolarni topish va tuzatishni osonlashtiradi.

Nima uchun biz funksiyalardan foydalanamiz?

Dasturlashda funktsiyalardan foydalanish uchun juda ko'p yaxshi sabablar mavjud. Birinchidan, funktsiyalar ishimizni tartibga solishga yordam beradi. Xuddi shu ko'rsatmalarni ko'p marta yozish o'rniga, biz ularni funktsiyada bir marta yozamiz va kerak bo'lganda funktsiyani chaqiramiz. Bu vaqtni tejaydi va xatolarning oldini oladi. Ikkinchidan, funksiyalar kodni qayta ishlatishimizga yordam beradi. Funktsiya aniqlangandan so'ng, uni dasturimizning ko'p qismlarida ishlatish mumkin. Uchinchidan, funktsiyalar dasturlarni o'qishni osonlashtiradi. Vazifa kichikroq funktsiyalarga bo'linganda, dastur nima qilishini tushunish uchun funktsiyalar nomlariga qarashingiz mumkin.

Tasavvur qiling, siz katta LEGO qal'asini quryapsiz. Siz butun qal'ani qurish uchun kichik bloklardan foydalanasiz. Har bir kichik blok ma'lum bir ishni bajaradigan funktsiyaga o'xshaydi. Barcha bloklar birlashtirilganda, siz to'liq qal'aga ega bo'lasiz. Xuddi shu tarzda, individual funktsiyalar to'liq dasturni tashkil qiladi.

Funktsiyani qanday aniqlash mumkin

Biz funktsiyani maxsus kod yordamida aniqlashimiz mumkin. Ko'pgina dasturlash tillarida biz kompyuterga funktsiyani bajarayotganimizni bildiruvchi kalit so'zdan foydalanamiz. Dasturlashni o'rgatish uchun ishlatiladigan mashhur tillardan biri bu Python. Pythonda biz funktsiyani ishga tushirish uchun def so'zidan foydalanamiz. Mana oddiy misol:

Misol:

 def say_hello():
    print("Salom, do'stim!")
  

Ushbu misolda funksiya say_hello deb ataladi. Def so'zi kompyuterga funksiyani aniqlayotganimizni bildiradi. Funktsiya bitta narsani bajaradi: u ekranda do'stona xabarni chop etadi.

Ushbu funktsiyani aniqlaganimizdan so'ng, biz undan keyinroq dasturimizda foydalanishimiz mumkin. Bu funktsiyani chaqirish deb ataladi. Kompyuter har safar chaqirilganda funksiya ichidagi barcha amallarni bajaradi.

Funksiyalarga oddiy misollar

Endi biz funksiyalarning uchta oddiy misolini ko'rib chiqamiz. Ularni tushunish oson va asosiy g'oyalarni o'rganishimizga yordam beradi.

1-misol: Salomlashish funksiyasi

Birinchi misolda biz kimnidir nomi bilan kutib oladigan funksiya yaratamiz. Funktsiyani chaqirganimizda, u do'stimizga salom aytadi.

Kod:

 def salom(ism):
    print("Salom, " + ism + "!")
  
# Funktsiyani "Alis" nomi bilan chaqirish
salom ("Alis")
  

Bosqichma-bosqich tushuntirish:

2-misol: Qo‘shish funksiyasi

Ikkinchi misolda biz ikkita raqamni qo'shadigan funktsiyani yozamiz. Bu raqamlarni bir-biriga qo'shadigan mini kalkulyatorga o'xshaydi.

Kod:

 def qo'shish_raqamlari (1-raqam, 2-raqam):
    natija = son1 + son2
    print("Yig'indi:", natija)
  
# 3 va 5 raqamlari bilan funksiyani chaqirish
qo'shish_raqamlari(3, 5)
  

Bosqichma-bosqich tushuntirish:

3-misol: Ko‘paytirish funksiyasi

Uchinchi misolda biz raqamni 2 ga ko‘paytiruvchi funksiya yaratamiz. Bu funksiya funksiya keyinchalik foydalanish uchun qanday qiymat qaytarishi mumkinligini ko‘rsatadi.

Kod:

 def multiply_by two(x):
    yangi_qiymat = x * 2
    new_value ni qaytaring
  
# Funksiyani chaqirish va natijani saqlash
natija = ikkiga_ko'paytiring(4)
print("4 ni 2 ga ko'paytirish", natija)
  

Bosqichma-bosqich tushuntirish:

Parametrlar va qaytish qiymatlarini tushunish

Funktsiyalar parametrlar orqali tashqi ma'lumotlarni qabul qilishi mumkin. Parametr funksiya chaqirilganda ma'lumotlarni saqlaydigan o'zgaruvchidir. Bizning misollarimizda name , num1 , num2 va x parametrlardir.

Ba'zi funktsiyalar qiymatlarni qaytaradi . Qaytish qiymati - bu funktsiya o'z ishini bajargandan so'ng qaytaradigan natija. 3-misolda multiply_by_two funksiyasi o'zgaruvchida saqlanadigan qiymatni qaytaradi.

Parametrlar va qiymatlarni qaytarish g'oyasi funktsiyalarni moslashuvchan va kuchli qiladi. Retseptdagi ingredientlarni o'zgartirish turli xil ta'mlarga olib kelishi kabi, siz turli xil natijalarni olish uchun kiritishni o'zgartirishingiz mumkin.

Modulli dasturlash: muammolarni qismlarga ajratish

Funktsiyalar modulli dasturlashda asosiy g'oyadir. Modulli dasturlash katta dasturni kichikroq, boshqariladigan qismlarga yoki modullarga bo'lish demakdir. Har bir funktsiya bitta oddiy vazifani bajaradigan modulga o'xshaydi. Barcha modullar birgalikda ishlaganda, ular to'liq dasturni tashkil qiladi.

Boshqotirma yaratish haqida o'ylab ko'ring. Har bir qism kichik va oddiy. Ammo barcha qismlarni birlashtirganingizda, siz to'liq rasmni ko'rasiz. Dasturlashda funksiyalardan foydalanish bir vaqtning o'zida bitta kichik bo'lak ustida ishlash imkonini beradi. Shunday qilib, dasturlarni yaratish, tushunish va tuzatish osonroq.

Modulli dasturlash takrorlashni kamaytirishga yordam beradi. Agar dasturingizning bir qismi bir xil ishni qayta-qayta bajarishi kerak bo'lsa, siz buning uchun funktsiya yozasiz. Keyin har safar bu ishni bajarishingiz kerak bo'lganda, siz xuddi shu kodni yozish o'rniga shunchaki funktsiyani chaqirasiz.

Ushbu yondashuv poyabzal bog'ichlarini qanday bog'lashni biladigan yordamchiga ega bo'lishga o'xshaydi, shuning uchun har safar yangi poyabzal olganingizda buni qanday qilishni qayta o'rganishingiz shart emas.

Tegishli kundalik misollar

Keling, funktsiyalarni kundalik faoliyat bilan taqqoslaylik. Tasavvur qiling, sizning uyingizda ko'p ishlar bor. Sizning vazifalaringizdan biri o'simliklarni sug'orishdir. Har safar barcha qadamlar haqida o'ylash o'rniga, "o'simliklarni sug'orib oling" ni eslab qolishingiz mumkin. Har safar o'simliklar ustida ishlaganingizda, siz o'zingizning funksiyangizdan foydalanasiz.

Yana bir misol - sendvich tayyorlash. Birinchidan, siz ikkita bo'lak nonni olasiz. Keyin, siz sariyog ', pishloq va, ehtimol, bir tilim jambon qo'shasiz. Nihoyat, siz ikkita bo'lakni birlashtirasiz. Har bir qadam funksiya satrlari kabi aniq va sodda. Har safar qadamlarni bajarib, siz har bir qadamni noldan o'ylamasdan mazali sendvich yaratasiz.

Ushbu kundalik misollar shuni ko'rsatadiki, funktsiyalar aniq, oddiy qismlarga bo'linib, ko'p vazifalarni bajarishimizga yordam beradi.

Funksiyalarni aniqlash haqida batafsil

Funktsiyalarni o'rganishni boshlaganingizda, har bir funktsiyaning nomi , qavslar ichidagi parametrlar ro'yxati va ichida kod bloki borligini sezasiz. Bu oddiy formatda shunday ko'rinishi mumkin:

Umumiy tuzilmasi:

 def function_name(parametr1, parametr2, ...):
    # kod bloki
    agar kerak bo'lsa # ba'zi_qiymatni qaytaring
  

Bu yerda funktsiya_nomi funksiya nomidir. Parametrlar funksiya foydalanadigan kirishlardir. Kod bloki - bu funksiya bajaradigan ko'rsatmalar to'plami. Nihoyat, qaytish natijani qaytaradi.

Ba'zida hech qanday parametrga ega bo'lmagan funktsiyalarni ko'rishingiz mumkin. Agar funktsiyaga qo'shimcha ma'lumot kerak bo'lmasa, siz hali ham qavslarni yozasiz, lekin ular bo'sh qoladi. Xuddi shunday, ko'pgina funktsiyalar xabarlarni chop etish kabi amallarni bajaradi va hech qanday qiymat qaytarmaydi.

Funksiyalarning asosiy xossalari

Funktsiyalarning ba'zi muhim xususiyatlarini eslab qolishingiz kerak:

Ushbu xususiyatlarga rioya qilish orqali dasturchilar tushunish, disk raskadrovka qilish va vaqt o'tishi bilan takomillashtirish osonroq bo'lgan dasturlarni yaratishi mumkin. O'yinchoqlaringizni qutilarga ajratish orqali xonangizni tartibli saqlash kabi, funktsiyalar ham dasturlarni tartibli va tartibli qiladi.

Variantlar va yanada ilg'or g'oyalar

Funktsiyalar g'oyasi bilan qulayroq bo'lganingizda, siz bir nechta o'zgarishlarga duch kelishingiz mumkin. Ba'zan funktsiyalar hech narsani qaytarmaydi; ular faqat harakatlarni bajaradilar. Boshqa paytlarda funksiyalar boshqa funksiyalarni chaqirishi mumkin. Bu ichki funksiyalar yoki funktsiya tarkibi sifatida tanilgan.

Masalan, funktsiya boshqa vazifani bajarishni boshlashdan oldin salomlashish funksiyasini chaqirishi mumkin. Funktsiyalarning bunday qatlamlanishi sizga ko'plab kichik, oddiy vazifalardan murakkab dasturlarni yaratishga imkon beradi.

Keyingi bosqichda siz rekursiv funktsiyalar kabi mavzularni o'rganishingiz mumkin. Rekursiv funktsiya o'zini chaqiradigan funktsiyadir. Garchi bu fikr biroz qiyin bo'lsa-da, bu muammolarni kichikroq qismlarga ajratishning yana bir usuli. Hozircha funksiyalar aqlli va tartibli kod yozishga yordam berishini bilish kifoya.

Qo'shimcha misollar va bosqichma-bosqich echimlar

Keling, funktsiyalarning bosqichma-bosqich ishlashini ko'rsatadigan yana ikkita batafsil misolni ko'rib chiqaylik.

4-misol: Juft sonlarni tekshirish funksiyasi

 def is_juft(raqam):
    # Raqam juftligini tekshiring
    agar raqam % 2 == 0 bo'lsa:
        Qaytish Haqiqiy
    boshqa:
        False ni qaytaring

# 6 raqamini tekshirish uchun funktsiyadan foydalanish
natija = juftlik(6)
print("6 juftmi?", natija)
  

Bosqichma-bosqich tushuntirish:

5-misol: Kvadratning maydonini hisoblash funksiyasi

 def kvadrat maydoni (yon_uzunlik):
    # Maydonni formuladan foydalanib hisoblang: maydon = yon_uzunlik * yon_uzunlik
    maydon = side_length * side_length
    qaytish maydoni

# Yon uzunligi 5 bo'lgan kvadratning maydonini hisoblash uchun funktsiyadan foydalanish
kvadrat_maydon = kvadrat_maydon(5)
print("Kvadratning maydoni", kvadrat_maydon)
  

Bosqichma-bosqich tushuntirish:

6-misol: Ikki sonning kattasini aniqlash funksiyasi

 def kattaroq_raqam(a, b):
    # Ikki raqamni solishtiring va kattaroq raqamni qaytaring
    a > b bo'lsa:
        qaytish a
    boshqa:
        qaytish b

# 7 dan 10 gacha bo'lgan kattaroq sonni topish uchun funksiyadan foydalanish
eng katta = kattaroq_raqam(7, 10)
print("Katta raqam", eng katta)
  

Bosqichma-bosqich tushuntirish:

Nima uchun funksiyalar modullilik uchun muhim

Funktsiyalar modulli tarzda dasturlarni yaratishga yordam beradigan kuchli vositadir. Funksiyalardan foydalanib, dasturingizning mustaqil ishlaydigan alohida qismlarini yaratishingiz mumkin. Bu shuni anglatadiki, agar dasturingizning bir qismida xatolik bo'lsa yoki uni yaxshilash kerak bo'lsa, katta hajmdagi kodni ko'rib chiqish o'rniga faqat bitta funktsiyani tuzatishingiz kerak.

Modulli dasturlash LEGO bloklari bilan qurishga o'xshaydi. Har bir blok mustaqil va turli tuzilmalarni yaratish uchun turli yo'llar bilan ulanishi mumkin. Agar bitta blok buzilsa, butun qal'ani qayta qurmasdan uni almashtirishingiz mumkin. Funktsiyalar yordamida dasturingizning har bir kichik bo'limi mustaqil ravishda tuzilishi, sinovdan o'tkazilishi va o'rnatilishi mumkin.

Dasturlashning bu usuli muammolarni yaxshiroq tushunishga yordam beradi va murakkab vazifalarni osonlashtiradi. Shuningdek, u muammolarni qanday mantiqiy fikrlash va ularni bosqichma-bosqich hal qilishni o'rgatadi.

Asosiy fikrlarning qisqacha mazmuni

Xulosa qilib aytganda, funktsiyalar dasturlashning muhim qismidir. Ular bizga toza, tushunarli va tushunarli kod yozish imkonini beradi. Funksiyalardan foydalanib, biz katta muammolarni kichik, boshqariladigan vazifalarga bo'lish orqali hal qilishimiz mumkin. Do'stingiz bilan salomlashasizmi, hisob-kitob qilasizmi yoki raqamning juftligini tekshirishingizdan qat'i nazar, funktsiyalar dasturlarimizni sodda va qiziqarli qilishga yordam beradi.

Har doim esda tuting: har bir katta vazifani kichik qadamlar yordamida osonlashtirish mumkin va bu kichik qadamlar dasturingizdagi funktsiyalardir.

Dasturlashni o'rganishda, tadqiq qilishda va zavqlanishda davom eting. Funktsiyalar ijodiy va foydali kod yozishda birinchi qadamdir!

Download Primer to continue