1.1 Fayl açılması
Python-da fayllarla işləmək — əsl zövqdür, çünki bu olduqca sadə və intuitiv şəkildə təşkil olunub. Biz indi fayl yaratmaq və ya disklərdə faylları hərəkət etdirməkdən yox, fayl məzmununun oxunması və yazılmasından danışırıq.
Adətən fayl məzmunu ilə iş aşağıdakı sxem üzrə aparılır:
Fayl açılması
Fayl məlumatları ilə iş
Faylın bağlanması
Bütün fayl məzmununun oxunma nümunəsi:
file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()
open
funksiyası fayl açmaq üçün istifadə olunur. O, əsasən iki argument qəbul edir: fayl adı və giriş rejimi. Funksiya fayl obyekti
qaytarır, hansı ki, sonradan oxuma və yazma əməliyyatları aparmaq üçün istifadə edilə bilər.
Nümunə:
file = open('example.txt', 'r')
Əgər yalnız fayl adı göstərilibsə, o, proqramın cari işçi kataloqunda axtarılacaq. Əgər tam fayl adı göstərilibsə, bu halda göstərilən yolla müraciət ediləcək.
1.2 Əlçatanlıq rejimləri
open()
funksiyasındakı ikinci parametr faylla işləmə rejimini göstərir. Əlçatanlıq rejimi faylda hansı əməliyyatların yerinə yetirilə biləcəyini müəyyən edir (oxuma, yazma və s.).
Əsas əlçatanlıq rejimləri bunlardır:
Read
— oxuma.Write
— yazma.Append
— əlavə etmə.
Bu rejimlərin bir neçə variasiyası mövcuddur:
- 'r': Faylı oxumaq üçün açır (default rejim). Fayl mövcud olmalıdır.
- 'w': Faylı yazmaq üçün açır. Faylın məzmunu silinəcək. Əgər fayl mövcud deyilsə, o yaradılacaq.
- 'a': Faylı əlavə etmək üçün açır. Məlumatlar faylın sonuna əlavə ediləcək. Əgər fayl mövcud deyilsə, o yaradılacaq.
- 'r+': Faylı oxumaq və yazmaq üçün açır. Fayl mövcud olmalıdır.
- 'w+': Faylı oxumaq və yazmaq üçün açır. Faylın məzmunu silinəcək. Əgər fayl mövcud deyilsə, o yaradılacaq.
- 'a+': Faylı oxumaq və əlavə etmək üçün açır. Məlumatlar faylın sonuna əlavə ediləcək. Əgər fayl mövcud deyilsə, o yaradılacaq.
Fayla yazmaq nümunəsi:
Əgər məlumatları fayla yazmaq istəyirsinizsə, faylı açarkən w
rejimini seçin. Dikkat edin ki, faylın köhnə məzmunu silinəcək!
file = open('example.txt', 'w')
file.write("Salam, Dünya!")
file.close()
Fayla əlavə etmək nümunəsi:
Əgər faylın mövcud məzmununu silmək istəmirsiniz, sadəcə faylın sonuna bir şey əlavə etmək istəyirsinizsə, faylı açarkən a
rejimini seçməlisiniz.
file = open('example.txt', 'a')
file.write("\nƏlavə edilmiş mətn.")
file.close()
Vacib!
Əgər fayla yazırsınızsa və fayl mövcud deyilsə, o avtomatik olaraq yaradılacaq. Amma mövcud olmayan bir fayldan oxumağa çalışsanız, istisna (exception) atılacaq.
1.3 Faylın Bağlanması
Hər dəfə fayl açdığınızda, əməliyyat sistemi sizin fayla giriş hüququnuzu yoxlayır və onu proqramınız tərəfindən istifadə olunan olaraq işarələyir. Faylla işləmək üçün xüsusi resurs — handler ayrılır.
Proqramınızın əldə edə biləcəyi handler'lərin sayı məhduddur. Bu o deməkdir ki, siz eyni anda yalnız bir neçə yüz faylı açıq saxlaya bilərsiniz. Bu çox görünə bilər, amma əgər proqramınız aylarla bir serverdə işləyirsə və hər gün fayllardan oxuyur və fayllara yazırsa, bu limiti çox tez doldura bilərsiniz.
Buna görə də, faylla işinizi bitirdikdən sonra onu bağlamaq lazımdır — close()
metodunu çağırmaq. Bununla əməliyyat sisteminə bildirirsiniz ki, artıq bu fayla ehtiyacınız yoxdur və onun handler'i sizə lazım deyil.
Faylın Bağlanması
Faylla iş bitdikdən sonra sistem resurslarını azad etmək üçün onu bağlamaq lazımdır. Bunun üçün close()
metodu istifadə olunur.
file = open('example.txt', 'r')
# Faylla əməliyyatların aparılması
file.close()
Oxuma və ya yazma üçün açdığınız hər bir fayl bağlanmalıdır. close()
metodunu çağırmağı unutmayın.
GO TO FULL VERSION