Darsliklar Python Fayl

Python Python Fayl

Fayllar bilan ishlash — bir necha bo’limdan iborat muhim mavzu. Fayl — bu ma’lumotni dastur yopilgandan keyin ham saqlab qoladigan usul. Oddiy o’zgaruvchilar dastur tugashi bilan yo’qoladi, fayldagi ma’lumot esa diskda qoladi. Loglar, sozlamalar, hisobotlar — barchasi fayllarda saqlanadi.

Fayldiskda nom bilan saqlanadigan ma’lumotlar to’plami. Python fayllar bilan ishlash uchun open() funksiyasini beradi, u fayl bilan dastur o’rtasida bog’lovchi ko’prik yaratadi.

open() funksiyasi va rejimlar

Fayl bilan har qanday ish open() dan boshlanadi. Unga ikki narsa beriladi: fayl nomi va rejim (fayl bilan nima qilmoqchi ekaningiz). Asosiy rejimlarni jadvalda ko’ramiz:

Rejim Belgi Vazifasi
Read "r" o’qish (standart)
Write "w" yozish (eskisini o’chiradi)
Append "a" oxiriga qo’shish
Create "x" yangi fayl yaratish

Bu darsda umumiy jarayonni tushunamiz, keyingi darslarda esa har bir rejimni alohida chuqur o’rganamiz.

Faylni ochish va yopish

Faylni ochgach, ish tugagach uni albatta yopish kerak. Aks holda ma’lumot to’liq saqlanmasligi yoki resurs band bo’lib qolishi mumkin:

fayl = open("salom.txt", "w")
fayl.write("Salom, UzbekDevs!")
fayl.close()
print("Fayl yozildi va yopildi")
Fayl yozildi va yopildi

open faylni ochdi, write unga matn yozdi, close esa faylni yopib, ma’lumotni diskga to’liq saqladi. close() ni unutmaslik juda muhim.

with — eng to’g’ri usul

Faylni yopishni unutish keng tarqalgan xato. Python buni hal qiladigan nafis yechim beradi — with konstruksiyasi. U blok tugashi bilan faylni avtomatik yopadi:

with open("salom.txt", "w") as fayl:
    fayl.write("UzbekDevs bilan Python o'rganamiz")

print("Fayl avtomatik yopildi")
Fayl avtomatik yopildi

with ... as fayl: bloki tugagach — hatto blok ichida xato yuz bersa ham — fayl kafolatli yopiladi. Aynan shuning uchun professional Python kodida fayllar deyarli har doim with orqali ochiladi. Buni odat qiling.

Fayl mavjudligini tekshirish

Fayl bilan ishlashdan oldin uning borligini tekshirish oqilona. Buning uchun os moduli ishlatiladi:

import os

if os.path.exists("salom.txt"):
    print("Fayl mavjud")
else:
    print("Fayl topilmadi")
Fayl mavjud

os.path.exists() fayl bor-yo’qligini True/False bilan qaytaradi. Bu, ayniqsa, mavjud faylni o’qishdan oldin FileNotFoundError xatosining oldini olishda foydali — o’tgan darsdagi try-except bilan birga ishlatsa yanada mustahkam bo’ladi.

Xulosa

Bu darsda fayllar bilan ishlashga kirish qildik: open() funksiyasi, o’qish/yozish/qo’shish rejimlari, close() ning ahamiyati, with bilan avtomatik yopish va os.path.exists() bilan mavjudlikni tekshirishni ko’rib chiqdik. Keyingi darsda fayl o’qishni batafsil o’rganamiz.