Menü Kapat

Müxtəlif programlaşdırma dillərində fayllardan istifadə edilir. Bəzən elə olur ki, programda yazdığımız məlumatlar bizə sonradan lazım olur. Bunun üçün fayllardan istifadə edilir. Pythonda da digər dillərdə olduğu kimi fayl yarada, onu istədiyiniz vaxt istifadə edə, üzərində istədiyiniz qədər dəyişiklik edə bilərsiniz.  Lakin Pythonda digər dillərdən fərqli olaraq fayllar üzərində əməliyyat aparmaq üçün kitabxana daxil etməli deyilsiniz. Python özü asanlıqla bunu müəyyən edəcəkdir

Əvvəlcə Pythonda faylların  necə yaradıldığına baxaq

Ilk_fayl= open(“file.txt”, “w”)

Burada 1 fayla iki ad verilir. 1-ci ad faylın kod daxilində istifadə olunacağı ad, ikinci isə faylın yaddaşda saxlanıldığı addır. Open bu adda faylı yaratdığımızı bildirir, W isə bu faylı yazmaq məqsədilə yaratdığımızı bildirir. Bu kodu yazdıqdan sonra kompüterimizdə file adli boş fayl yaranacaq. Burada open fayl metodu, w isə fayl rejimi adlanırılır. Bu rejimlər vasitəsilə fayldan hansı məqsəd üçün istifadə olunduğunu bildirir. Əvvəlcə fayllarla işləmək üçün olan bütün rejimlərə nəzər salaq

  1. r-  fayl məlumatların oxunması məqsədilə açılır
  2. w-fayl məlumatların yazılması məqsədilə açılır. Əgər qeyd edilən adda fayl mövcuddursa yeni məlumatlar yazılmadan öncə ordakı məlumatlar silinir. Fayl mövcud deyilsə qeyd edilən adda yeni bir fayl meydana gətirilir
  3. a- Fayl məlumatların əlavə edilməsi məqsədilə açılır. Daxil edilən məlumatlar faylın sonuna əlavə edilir
  4. r+ -fayl məlumatların həm oxunması, həm də yazılması məqsədilə açılır
  5. w+  r+ ilə oxşar funksiyanı yerinə yetirir. Belə ki w+ da fayl məlumatlarının həm yazılması, həm də oxunması məqsədilə açılır. Lakin fərq ondadır ki, r+ yazdıqda göstərici fayl məlumatlarının əvvəlində w+ yazdıqda isə sonunda yerləşir
  6. rb-fayl məlumatların oxunması üçün ikilik rejimdə (binary mode) açılır
  7. wb- Fayl məlumatların oxunması üçün ikilik rejimdə açılır. Əgər qeyd edilən adda fayl mövcuddursa yeni məlumatlar yazılmadan öncə ordakı məlumatlar silinir. Fayl mövcud deyilsə qeyd edilən adda yeni bir fayl meydana gətirilir
  8. ab- Fayl məlumatların əlavə edilməsi üçün ikilik rejimdə açılır. Daxil edilən məlumatlar faylın sonuna əlavə edilir
  9. r+b Fayl məlumatların həm oxunması, həm də yazılması məqsədilə ikilik rejimdə açılır

İndi isə fayl metodlarına nəzər salaq

Fayl.write(sətir): Bu metod vasitəsilə fayla yeni məlumat yazmaq olar və qiymət qaytarmayan metoddur. Ola bilər ki növbəti sətrə keçmək lazım gəlsin bu zaman \n-dan istifadə olunur. Beləcə növbəti məlumat yeni sətrdə yazılmış olacaq. Hətta ola bilər ki, biz fayla sətr tipində olan məlumat deyil başqa tipdə, məsələn siyahı tipində olan məlumat yazmaq istəyirik. Bu zaman siyahı tipini string tipinə çevirərək fayla yazmalıyıq. Lakin bir məqamı yadda saxlamaq lazımdır ki biz faylı açmasaq və işimiz bitdikdən sonra bağlamasaq məlumatlar yaddaşa yazılmayacaq

Misala baxaq

  • myfile=open(‘myfile.txt’,’w’)
  • myfile.write(‘this is our fist line\n this is out second line\n and this is the third line\n’)
  • myfile.close()

Həmin faylı açsaq aşağıdakı məlumatları görə bilərik

this is our fist line

this is out second line

and this is the third line

 

fayl.read(ölçü):  bu metod vasitəsilə fayldakı məlumatları çıxışa vermək olar. Burada qeyd etdiyimiz ölçü qədər məlumat verilir. Ölçünü qeyd etmək məcburi deyil, qeyd etmədikdə bütün məlumatlar çıxışa veriləcək. Bayaq yazdığımız myfile faylından məlumatları oxumağa çalışaq

  • myfile=open(‘myfile.txt’,’r’)
  • b=myfile.read(5)
  • a=myfile.read(6)
  • myfile.close()
  • print(b)
  • print(a)

Biz məlumatı oxumağa başladıqda göstərici faylın əvvəlində yerləşir. Bizim ilk 5 məlumat çıxışa verildikdən sonra göstərici 5-ci məlumatın sonunda dayanır və ondan sonra gələn 6 məlumatı oxuyub a dəyişəninə mənimsədir, beləcə çıxışa belə bir məlumat verilir:

this

is our

aradakı boşluq da bir məlumat kimi hesablanır. Bütün məlumatları oxuduqdan sonra göstərici faylın sonunda yerləşir və yenidən məlumat oxumaq istədikdə çıxışa boş sətir qaytarılacaq.

Fayl.readline() vasitəsilə sətrlər bir-bir oxunur.  Mötərizə daxilinə ədəd yazmaq da olar. Belə ki, ədəd yazdıqda göstəricinin olduğu sətrin mötərizədə göstərilən qədər məlumatı çıxışa veriləcək. Bütün məlumatlar çıxışa verildikdən sonra yenidən fayl.readline()  yazsaq boş sətir çıxışa veriləcək. fayl.readlines() adlanan metod da var ki bütün sətrləri çıxışa vermək üçün istifadə olunur

  • myfile=open(‘myfile.txt’,’r’)
  • b=myfile.readline()
  • myfile.close()
  • print(b)

Çıxışa fayldakı birinci sətir veriləcək