Python dasturlash maktabi
Funksiyalar (vazifalar) Oldindan belgilangan funksiyalarni ishlatishdan tashqari, def operatoridan foydalanib o'zingizning funksiyalaringizni yaratishingiz mumkin. Funksiya xuddi o'zgaruvchilarga o'xshab oldin yoziladi va keyin chaqiriladi. Funksiyadagi kod…
filter() funksiyasi
Pythonda filter() funksiyasi funksiya va argumentni qabul qilib, funksiyadagi shartni bajarib elementlarni ajratadi va qiymat qaytaradi.
Afzalligi: kam kod yoziladi, sikllardan foydalanish shart emas, xotiradan faqat bir marta vaqtincha foydalanadi.
Avtomobil filteri havodan chang va chiqindilarni ajratib motorga toza havoni yetkazib berishi filter funksiyasiga yaqqol namunadir.
#—————————————-#
irakset
#—————————————-#
Satr turidagi elementlarni teskarisiga o'girganda ham bir xil so'z paydo bo'ladigan elementlarni chop qilish dasturi
<filter object at 0x7f2ded0a5fa0>
<class 'filter '>
#—————————————-#
{2: 'maymun', 4: 'burgut'}
maymun, burgut
#—————————————-#
['sirtlon', 'olmaxon']
#—————————————-#
tuya
#—————————————-#
{22: 'Sanjar', 41: 'Iskandar'}
#—————————————-#
#—————————————-#
#—————————————-#
['Durdona Jakbaraliyeva', 'Munisa Keldiyorova', 'Mohinur Abdurahimova']
#—————————————-#
[7, 21, 27, 42, 112, 256, True]
#—————————————-#
Python dasturlash tilini 0dan o'rganishni ushbu mavzudan 👈 boshlang.Testlarni tushunmasdan belgilamang.Izohlarda faol boʻlinglar.
#filter
@pythonuz
Pythonda filter() funksiyasi funksiya va argumentni qabul qilib, funksiyadagi shartni bajarib elementlarni ajratadi va qiymat qaytaradi.
Afzalligi: kam kod yoziladi, sikllardan foydalanish shart emas, xotiradan faqat bir marta vaqtincha foydalanadi.
Avtomobil filteri havodan chang va chiqindilarni ajratib motorga toza havoni yetkazib berishi filter funksiyasiga yaqqol namunadir.
#—————————————-#
print("".join(reversed('teskari')))
# reversed funksiyasi satrni teskari o'girib beradiirakset
#—————————————-#
Satr turidagi elementlarni teskarisiga o'girganda ham bir xil so'z paydo bo'ladigan elementlarni chop qilish dasturi
def birxil(word):
return word.lower() == "".join(reversed(word)).lower()
satr = ["nonushta", "non", "qovoq", "dastur"]
var=filter(birxil, satr)
print(var)
# filter() funksiyasi filter obyektini qaytaradi<filter object at 0x7f2ded0a5fa0>
print(type(var))
# obyekt turini aniqlaymiz<class 'filter '>
print(list(var))
# filter obyektini ro'yxatga o'tkazib olish uchun list() funksiyasidan foydalaniladiprint(list(f))
['non', 'qovoq']#—————————————-#
lugat = {1: 'tuya', 2: 'maymun', 3: 'sirtlon', 4: 'burgut', 5: 'olmaxon'}
# lug'atjuft = dict(filter(lambda elem: elem[0] % 2 == 0, lugat.items())
) # juft raqamli kalitlardan iborat bo'lgan lug'at turida ajratib olamizprint(juft)
# lug'at turida natijani chop qilamiz{2: 'maymun', 4: 'burgut'}
print(', '.join(list(juft.values()))
) # lug'at turidagi natijani satr turiga o'zgartirib chop qilamizmaymun, burgut
#—————————————-#
yetti = dict(filter(lambda elem: len(elem[1]) == 7, lugat.items()))
# 7 ta harfdan iborat bo'lgan lug'at qiymatlarini lug'at turida ajratib olamizprint(list(yetti.values()))
# lug'at turidagi natijani ro'yxat turiga o'zgartirib chop qilamiz['sirtlon', 'olmaxon']
#—————————————-#
juft = dict(filter(lambda elem: elem[0] % 1 == 0 and len(elem[1]) == 4, lugat.items()))
# toq raqamli kalitlardan va 4 ta belgidan iborat bo'lgan qiymatlarni lug'at turida ajratib olamizprint(', '.join(list(juft.values())))
# lug'at turidagi natijani satr turiga o'zgartirib chop qilamiztuya
#—————————————-#
yosh = {15: 'Dilorom', 12: 'Otabek', 22: 'Sanjar', 41: 'Iskandar'}
print(dict(filter(lambda elem: elem[0] > 18, yosh.items())))
# ro'yxatdan 18 yoshdan katta kishilarni ajratib olib chop qilish{22: 'Sanjar', 41: 'Iskandar'}
#—————————————-#
massiv1 = [1, 3, 6, 7, 12, 19, 19, 21, 21, 27, 29, 1]
massiv2 = [1, 19, 29]
mavjud = list(filter(lambda x: x not in massiv2, massiv1))
# massiv2 da mavjud bo'lmagan massiv1 dagi raqamlarni ro'yxat turida chop qilishprint(mavjud)
[3, 6, 7, 12, 21, 21, 27]#—————————————-#
satr = "Bugu*n# @h&avo ju%da is%%s%iq!$"
belgi = filter(lambda x: x not in ['#', '$', '@', '*', '%', '&'], satr)
# satrdan quyidagi belgilarni o'chiramizprint(''.join(
belgi
))
Bugun havo juda issiq!#—————————————-#
names = ['Durdona Jakbaraliyeva', 'Munisa Keldiyorova', 'Boysoat Namozov', 'Oybek Ibrohimov', 'Mohinur Abdurahimova']
print(list(filter(lambda x: x.split(' ')[1][-2:] == 'va', names)))
# Ro'yxatdan qizlarni ism familiyasini ajratib olib chop qilish['Durdona Jakbaraliyeva', 'Munisa Keldiyorova', 'Mohinur Abdurahimova']
#—————————————-#
aralash = ["", 7, 21, 27, 42, 112, 256, True, False, [], {}]
print(list(filter(None, aralash)))
# 0 ga teng bo'lmagan elementlarni ajratib olib chop qilish[7, 21, 27, 42, 112, 256, True]
#—————————————-#
Python dasturlash tilini 0dan o'rganishni ushbu mavzudan 👈 boshlang.Testlarni tushunmasdan belgilamang.Izohlarda faol boʻlinglar.
#filter
@pythonuz