Python dasturlash maktabi


Гео и язык канала: Узбекистан, Узбекский
Категория: Образование


@pythonuz kanalida python dasturlash tili Nematillo Ochilov tomonidan bosqichma bosqich bepul o'rgatiladi
@NematilloOchilov - blog
@pythonuz - Python darslari
@js_uz - Java Script
@MQLUZ - Savdo robotlarni dasturlash

Связанные каналы  |  Похожие каналы

Гео и язык канала
Узбекистан, Узбекский
Категория
Образование
Статистика
Фильтр публикаций


👉https://t.me/notcoin_bot?start=rp_22378369 👍

Shunga kirib pul ishlasa boʻladi

20000 tanga toʻplagandan keyin Boost boʻlimidagi Auto tap bot ga bossangiz har 12 soatda sizga avtomatik 130000 toncoin beradi.Bu 1 oyda 10 million notcoin boʻladi va uni taxminan 20$ ga sotsangiz boʻladi. Bu narx keyinchalik oshib boradi

Savollarni izohda yozing

Internetda pul ishlashni xohlaganlarga ushbu postni yuboring


Репост из: Python dasturlash maktabi
Kanalga yangi tashrif buyurganlarga:
Python dasturlash tilini 0dan o'rganishni ushbu mavzudan 👈 boshlang.

Testlarni tushunmasdan belgilamang. Izohlarda faol boʻlinglar.

👉 Nematillo Ochilovning internetdagi sahifalari 👈


with open("pythonuz.txt", 'w+') as yozish: yozish.write("1: one\n2: two") yozish.seek(0) print(yozish.readlines())
Опрос
  •   ['1: one\n2: two']
  •   1: one
  •   2: two
  •   IndexError
3769 голосов


with open("pythonuz.txt", 'w+') as yozish: yozish.write("1: one\n2: two\n3: three") yozish.seek(0) print(yozish.readlines()[2])
Опрос
  •   1: one
  •   2: two
  •   3: three
  •   ['1: one\n', '2: two\n']
2385 голосов


with open("pythonuz.txt", 'w+') as yozish: yozish.write("1: one\n2: two\n3: three") yozish.seek(0) print(yozish.readline(2))
Опрос
  •   1:
  •   2:
  •   2: two
  •   3:
2096 голосов


with open("pythonuz.txt", 'w+') as yozish: yozish.write("1: one, 2: two") yozish.seek(0) print(yozish.read().split(':')[1])
Опрос
  •   2: two
  •   one, 2
  •   1: 2
  •   one: two
1877 голосов


with open("pythonuz.txt", 'w+') as yozish: yozish.write("1: one, 2: two") yozish.seek(0) print(yozish.read().split(',')[1])
Опрос
  •   1: one
  •   2: two
  •   one
  •   two
1832 голосов


Fayllar bilan ishlashda qanday holatda close() metodidan foydalanilmaydi?
Опрос
  •   binary maʼlumotlarni yozganda/oʻqiganda
  •   with opertoridan foydalanganda
  •   1024 baytdan kichik maʼlumot yozganda
  •   satr maʼlumotlarini yozganda
1971 голосов


Faylga ikkilik maʼlumotni yozish uchun rejimga qaysi belgini yozamiz
Опрос
  •   write
  •   wr
  •   w
  •   wb
2202 голосов


Python dasturlash tili fayllar bilan ishlashda eng koʻp qaysi funksiyadan foydalaniladi?
Опрос
  •   read()
  •   write()
  •   open()
  •   close()
2328 голосов


Ⓜ️ Fayllar

Dasturda fayllar nima uchun kerak?
Ma'lumotlar ombori mavjud bo'lmagan kichkina dasturlarda ma'lumotlar operativ xotirada joy egallamasligi uchun ular fayllarda saqla
nadi.

Python fayllarni yaratish, o'qish, yangilash va o'chirish uchun bir nechta funksiyalarga ega.
Pythonda fayllar bilan ishlashning asosiy funksiyasi open() funksiya hisoblanadi.

open() funksiya 8 ta argumentni https://docs.python.org/3/library/functions.html#open o'z ichiga oladi.Open funksiyasi bilan ishlashda asosan fayl nomi va rejim argumentlaridan foydalanamiz.

Fayl ochishning har xil usullari (rejimi) mavjud:
r Faylni faqat o'qish uchun ochadi, agar fayl mavjud bo'lmasa FileNotFoundError nomli xatolikni qaytaradi
rb Faylni faqat ikkilik formatda o'qish uchun ochadi.
r+ O'qish va yozish uchun faylni ochadi.
rb+ Ikkilik formatda o'qish va yozish uchun faylni ochadi.
w Faylni faqat yozish uchun ochadi.
wb Faylni faqat ikkilik formatda yozish uchun ochadi.
w+ Faylni yozish va o'qish uchun ochadi.
wb+ Ikkilik formatda yozish va o'qish uchun faylni ochadi.
a Qo'shish uchun faylni ochadi, agar u mavjud bo'lmasa faylni yaratadi.
ab Ikkilik formatda qo'shish uchun faylni ochadi.
a+ Faylni qo'shish va o'qish uchun ochadi.
ab+ Ikkilik formatda qo'shish va o'qish uchun faylni ochadi.
x Faylni yaratadi, agar fayl mavjud bo'lsa xatolikni qaytaradi.
w+ Faylni yaratish va yozish uchun ochadi.

Bundan tashqari, fayl ikkilik yoki matn rejimi sifatida ishlashi kerakligini belgilashingiz mumkin.Fayl matn bilan ishlaganda 't' belgini ko'rsatish shart emas.

"t"- Text - Matn rejimi
"b" - Binary - Ikkilik rejim (matn turidan boshqa formatlar)

Pythonda fayl bilan ishlash quyidagi tartibda amalga oshiriladi:
1. open() funksiyasi yordamida fayl ochiladi;
2. read() metodi yordamida fayl o'qish yoki write() metodi yordamida faylga
yozish amalga oshiriladi;
3. close() metodi faylni yopadi.

file = open("pythonuz.txt", 'r')
file.read()
file.close()

Har doim fayllarni yopish kerak, ba'zi hollarda buferlash tufayli faylga kiritilgan o'zgarishlar faylni yopmaguningizcha ko'rinmasligi mumkin.

Fayllar bilan ishlashda blokda istisnolar yuzaga kelsa fayl avtomatik tarzda yopilishi uchun with operatoridan foydalanish tavsiya etiladi va bu operatordan foydalanganda close() metodi yozilmaydi:
with open("pythonuz.txt", "r") as file:
file.read()

'r' birlamchi rejim hisoblanadi va faylnmi o'qishda hech qanday harfni ko'rsatish shart emas:
with open("pythonuz.txt") as file:
file.read()

w, w+, wb, wb+ rejimlaridan foydalanganda ehtiyot bo'lish kerak , chunki fayl allaqachon mavjud bo'lsa, faylga oldin yozilgan barcha ma'lumotlar o'chiriladi.

with open("pythonuz.txt", 'w+') as yozish:
yozish.write("1-qator\n2-qator\n3-qator")
yozish.seek(0) # faylning boshiga o'tish

print("read(12): ", yozish.read(12)) # faylning 12-belgisigacha bo'lgan satrni o'qiydi
read(12): 1-qator
2-qa

yozish.seek(0)
print("read(): ", yozish.read()) # fayldagi barcha ma'lumotni o'qiydi
read(): 1 - qator
2 - qator
3 - qator

yozish.seek(0)
print("readline(): ", yozish.readline()) # 1-qatorni o'qish
readline(): 1 - qator

yozish.seek(0)
print("readline(5): ", yozish.readline(5)) # 1-qatordagi 5-belgigacha o'qish
readline(5): 1 - qat

yozish.seek(0)
print(yozish.readlines()) # barcha qatorlarni ro'yxatlash
['1-qator\n', '2-qator\n', '3-qator']

print("readable(): ", yozish.readable()) # O'qish mumkin bo'lsa True aksi bo'lsa False qaytaradi
readable(): True

print("writable(): ", yozish.writable()) # Yozish mumkin bo'lsa True aksi bo'lsa False qaytaradi
writable(): True

@pythonuz


Kanalga yangi tashrif buyurganlarga:
Python dasturlash tilini 0dan bepul o'rganishni ushbu mavzudan 👈 boshlang.

Testlarni tushunmasdan belgilamang. Izohlarda faol boʻlinglar.

👉 Nematillo Ochilovning internetdagi sahifalari 👈


yosh = {21: 'Dilsora', 9: 'Sadokatkhon', 12: 'Lazizbek', 11: 'Iskandar'} print(list(filter(lambda elem: len(elem[1]) > 10, yosh.items()))[0][1])
Опрос
  •   Dilsora
  •   Sadokatkhon
  •   Lazizbek
  •   Iskandar
4831 голосов


massiv1 = [7, 14, 42, 7] massiv2 = [42, 14] mavjud = set(filter(lambda x: x not in massiv2, massiv1)) print(mavjud)
Опрос
  •   7
  •   ['7']
  •   {7}
  •   {7: 7}
3082 голосов


lugat = {1: 'ot', 2: 'burgut', 3: 'fil'} var = filter(lambda elem: len(elem[1]) % 2 == 0, lugat.items()) print(', '.join(dict(var).values()))
Опрос
  •   ot
  •   ot, burgut
  •   ot, fil
  •   burgut, fil
2694 голосов


names = ['Isoyev', 'Umurov', "Ro'ziyeva"] print(list(filter(lambda x: x[-2:] not in ['ov', 'ev'], names)))
Опрос
  •   ['Isoyev', 'Umurov']
  •   ["Ro'ziyeva"]
  •   ['Isoyev']
  •   ['Umurov']
2478 голосов


satr = "@#py$,$tho#nuz," print(f'{satr[-1]}'.join(filter(lambda x: x not in ['#', '$', ','], satr)))
Опрос
  •   @,p,y,t,h,o,n,u,z
  •   z
  •   @pythonuz
  •   pythonuz
2603 голосов


juft = filter(lambda elem: elem[0] % 2 != 0, {1: 2}.items()) print(len(dict(juft))
Опрос
  •  
  •   1
  •   2
  •   3
2453 голосов


var = ["", True, False, [True], {}] print(len(list(filter(None, var))))
Опрос
  •   1
  •   2
  •   True
  •   SyntaxError
2403 голосов


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.

#—————————————-#

print("".join(reversed('teskari')))
# reversed funksiyasi satrni teskari o'girib beradi
irakset

#—————————————-#
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


print(type(var)) # obyekt turini aniqlaymiz


print(list(var)) # filter obyektini ro'yxatga o'tkazib olish uchun list() funksiyasidan foydalaniladi
print(list(f))
['non', 'qovoq']

#—————————————-#

lugat = {1: 'tuya', 2: 'maymun', 3: 'sirtlon', 4: 'burgut', 5: 'olmaxon'}
# lug'at


juft = dict(filter(lambda elem: elem[0] % 2 == 0, lugat.items())) # juft raqamli kalitlardan iborat bo'lgan lug'at turida ajratib olamiz
print(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 qilamiz
maymun, 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 olamiz
print(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 olamiz
print(', '.join(list(juft.values()))) # lug'at turidagi natijani satr turiga o'zgartirib chop qilamiz
tuya

#—————————————-#

yosh = {15: 'Dilnoza', 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 qilish
print(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'chiramiz
print(''.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]

#—————————————-#

Mavzu sizga ma'qul kelgan bo'lsa mavzuni dasturlashga oid guruhlarga yuborib muhokama qiling.Tushunmagan savollaringizni izohda yozib qoldiring.

#filter

@pythonuz

Показано 20 последних публикаций.