lambda funksiylari. Python lambda konstruktsiyasidan foydalangan holda dastur bajarilishi vaqtida anonim funksiyalarni (masalan, nom bilan bog'lanmagan funksiyalar) yaratishga imkon beradi. Bu holda funksiya ob'ektlari ifodalar ko'rinishida yaratiladi.
lambda kalit so'zidan keyin bir yoki bir nechta argumentlar, so'ng ikki nuqta va ifoda keladi:
lambda argl, arg2, argN: ifoda.
Oddiy funksiya e’loni (f1) hamda lambda funksiyasi e’loni (f2) o'rtasidagi farq quyidagi misol yordamida tushuntiriladi.
def fl (х):
return х**2
f2 = lambda х: х**2
print f1(4), f2(4)
Natija
16 16
Bunday konstruktsiyalar kichik funksiyalarni yaratish uchun qulay va ularni ishlatadigan kodga funksiya e’lonlarini kiritish imkonini beradi.
Pythonda ismlar fazosi.Dasturning har bir nuqtasi bilan bog'langan uchta ism fazosi mavjud: mahalliy, global va o'rnatilgan. Ismlar fazosi nomlarni ob'ektlarga solishtirishni belgilaydi.
Ismlar fazosi vaqtning turli momentlarida yaratiladi va turli amal qilish muddatlarga ega. O'rnatilgan ismlar fazosi interpretator ishga tushganda yaratiladi va interpretatorning ishlashi davomida mavjud bo'ladi. Modulning global ismlar fazosi o'qilganda yaratiladi va odatda interpretator ish tugatilgunga qadar mavjud bo'ladi. Funksiyaning mahalliy ismlar fazosi funksiya chaqirilganda yaratiladi va funksiya ichida amal qiladi.
Funksiya tanasi ichida e’lon qilingan nomlar faqat funksiya tanasi ichidagina ma’noga ega bo`ladi. Bu nomlarga funksiyadan tashqarida murojaat qilish mumkin emas. Funksiya tanasi ichidagi global xususiyatni o`z ichiga olgan modulidagi o'zgaruvchi global instruksiyasi yordamida taqdim etiladi.
Ismlar ketma-ket to'rt bosqichda ko'rib chiqiladi: mahalliy, keyin qo'shimcha funksiya (agar mavjud bo'lsa), keyin global va nihoyat o'rnatilgan.
2.5 Modullar Python tilidagi dastur. Dasturlashga modulli yondashuvda katta masala bir nechta kichikroq masalalarga bo'linadi, ularning har biri alohida modul tomonidan bajariladi. Ular orasidagi aloqalarni minimallashtiradigan modullarning shunday tarkibini tuzish juda muhimdir. Uning elementlari o'rtasida ko'plab bog'lanishlarga ega bo'lgan funksiyalar to'plamini bitta modulga joylashtirish mantiqan to'g'ri keladi.
Python dasturi qo'shimcha fayllar biriktirilishi mumkin bo'lgan bitta asosiy fayl sifatida tashkil etilgan. Har bir bunday fayl ko'rsatmalarni o'z ichiga olgan alohida moduldir.
Python dasturlarida foydalaniladigan modullar kelib chiqishi bo'yicha oddiy modullarga (Pythonda yozilgan) va boshqa dasturlash tilida yozilgan kengaytma modullariga bo'linadi (masalan, C).
Modulni Python dasturiga kiritish uchun u asosiy fayl yoki boshqa dastur fayllari tomonidan import qilinishi kerak.