Darsliklar Python Fayl yozish / yaratish

Python Python Fayl yozish / yaratish

Faylga yozish va yangi fayl yaratish — o’qishga teskari, ammo bir xil darajada muhim yo’nalish. O’qishni o’rgandik; endi dastur hosil qilgan ma’lumotni diskka saqlaymiz. Hisobot yaratish, log yozish, foydalanuvchi ma’lumotini faylga eksport qilish — bularning bari yozish amaliga tayanadi.

Faylga yozishdastur xotirasidagi ma’lumotni diskdagi faylga saqlash jarayoni. Python buni write() va writelines() metodlari orqali, "w" (yozish), "a" (qo’shish) va "x" (yaratish) rejimlarida bajaradi.

“w” rejimi — yozish

"w" rejimi faylga yozadi. Muhim ogohlantirish: agar fayl allaqachon mavjud bo’lsa, uning butun eski tarkibi o’chib ketadi:

with open("hisobot.txt", "w") as fayl:
    fayl.write("UzbekDevs hisoboti\n")
    fayl.write("Sana: 2026-07-01\n")

print("Fayl yozildi")
Fayl yozildi

\n — yangi qator belgisi. Uni qo’ymasangiz, matnlar bir qatorga yopishib qoladi. "w" rejimidan ehtiyot bo’lib foydalaning — u eski ma’lumotni ayamaydi.

“a” rejimi — oxiriga qo’shish

Agar mavjud faylni o’chirmasdan, unga yangi ma’lumot qo’shmoqchi bo’lsangiz, "a" (append) rejimini ishlating:

with open("hisobot.txt", "a") as fayl:
    fayl.write("Yangi yozuv qo'shildi\n")

print("Ma'lumot qo'shildi")
Ma'lumot qo'shildi

"a" yozuvni doim fayl oxiriga qo’shadi, eskisiga tegmaydi. Aynan shuning uchun log fayllari doim "a" rejimida yoziladi — har bir yangi hodisa oldingilari ustiga qo’shilib boradi.

Rejimlar farqi

"w" va "a" ni chalkashtirmaslik uchun farqni jadvalda aniq ko’ramiz:

Rejim Fayl bo’lmasa Fayl bo’lsa
"w" yaratadi eskisini o’chirib yozadi
"a" yaratadi oxiriga qo’shadi
"x" yaratadi xato beradi

Ko’p qatorni bir yo’la yozish — writelines()

Ro’yxatdagi bir necha qatorni bitta metod bilan yozish mumkin:

qatorlar = ["Farrux\n", "Master Sherkulov\n", "UzbekDevs\n"]
with open("ismlar.txt", "w") as fayl:
    fayl.writelines(qatorlar)

print("Barcha qatorlar yozildi")
Barcha qatorlar yozildi

writelines avtomatik \n qo’shmaydi — shuning uchun har elementga o’zimiz yangi qator belgisini kiritdik. Bu nozik nuqtani yodda tuting.

“x” rejimi — xavfsiz yaratish

"x" rejimi faqat fayl hali mavjud bo’lmaganda yaratadi. Agar fayl bor bo’lsa, xato beradi — bu tasodifan eski faylni o’chirib yuborishdan himoya qiladi:

try:
    with open("yangi.txt", "x") as fayl:
        fayl.write("Bu yangi fayl")
    print("Fayl yaratildi")
except FileExistsError:
    print("Bunday fayl allaqachon mavjud")
Fayl yaratildi

Bu naqsh muhim ma’lumotni tasodifan qayta yozib yuborish xavfi bo’lgan joylarda ishlatiladi.

Xulosa

Bu darsda faylga yozishning "w", "a", "x" rejimlarini, write() va writelines() metodlarini, \n ning ahamiyatini va xavfsiz yaratishni o’rgandik. "w" eskisini o’chiradi, "a" qo’shadi, "x" esa himoyalab yaratadi. Keyingi darsda fayl o’chirish — fayllar mavzusining yakuniy qismiga o’tamiz.