Python-da yeni kataloqda faylların yaradılması və saxlanması

Biznes

Aşağıdakı bölmələr təyinat olaraq yeni qovluqdan (qovluqdan) istifadə edərək Python-da yeni faylın necə yaradılması və saxlanacağını izah edir.

  • Open() ilə mövcud olmayan kataloqu təyin edərkən xəta(FileNotFoundError)
  • os.makedirs()Kataloq yaradın
  • Təyinat yeri ilə yeni fayl yaratmaq üçün kod nümunəsi

Aşağıdakı mətn faylının nümunəsidir.

Şəkilləri saxlayarkən, mövcud olmayan kataloqu ehtiva edən yolu təyin edə bildiyinizdən (yaxud mövcud olmayan kataloqu avtomatik olaraq yaradıb-yaratmayacağınız) kitabxanadan asılıdır.
FileNotFoundErrorBu xəta baş verərsə, aşağıdakı nümunədə olduğu kimi yadda saxlamaq funksiyasını yerinə yetirməzdən əvvəl os.madeirs() ilə yeni kataloq yarada bilərsiniz.

Open() ilə mövcud olmayan kataloqu təyin edərkən xəta(FileNotFoundError)

Daxili open() funksiyası ilə yeni fayl yaratarkən, təyinat kimi ilk arqument kimi yeni kataloq (mövcud olmayan kataloq) olan yol göstərildikdə xəta baş verir.(FileNotFoundError)

open('not_exist_dir/new_file.txt', 'w')
# FileNotFoundError

open() funksiyasının ilk arqumenti mütləq yol və ya cari kataloqa nisbətən yol ola bilər.

Mövcud kataloqda yeni fayl yaratmaq və ya mövcud faylın üzərinə yazmaq və ya ona əlavə etmək kimi open() funksiyasının əsas istifadəsi üçün aşağıdakı məqaləyə baxın.

Kataloq yaradın(os.makedirs())

Mövcud olmayan qovluqda yeni fayl yaratarkən open()-dan əvvəl qovluğu yaratmaq lazımdır.

Əgər siz Python 3.2 və ya daha yeni versiyalardan istifadə edirsinizsə, os.makedirs() funksiyasından exist_ok=True arqumenti ilə istifadə etmək rahatdır. Hədəf kataloq artıq mövcud olsa belə, heç bir xəta baş verməyəcək və kataloq bir anda yaradıla bilər.

import os

os.makedirs(new_dir_path, exist_ok=True)

Əgər sizdə Python-un köhnə versiyası varsa və os.makedirs()-də exist_ok arqumenti yoxdursa, mövcud kataloqa gedən yolu göstərsəniz, xəta alacaqsınız, ona görə də yoxlamaq üçün os.path.exists() istifadə edin. ilk növbədə kataloqun mövcudluğu.

if not os.path.exists(new_dir_path):
    os.makedirs(new_dir_path)

Təfərrüatlar üçün aşağıdakı məqaləyə baxın.

Təyinat yeri ilə yeni fayl yaratmaq üçün kod nümunəsi

Aşağıda təyinat qovluğunu təyin etməklə yeni fayl yaradan və saxlayan funksiyanın kod nümunəsi verilmişdir.

Birinci arqument dir_path təyinat qovluğunun yolu, ikinci arqument fayl adı yaradılacaq yeni faylın adı və üçüncü arqument file_content hər biri sətir kimi göstərilən yazılacaq məzmundur.

Göstərilən kataloq mövcud deyilsə, yenisini yaradın.

import os

def save_file_at_dir(dir_path, filename, file_content, mode='w'):
    os.makedirs(dir_path, exist_ok=True)
    with open(os.path.join(dir_path, filename), mode) as f:
        f.write(file_content)

Aşağıdakı kimi istifadə edin.

save_file_at_dir('new_dir/sub_dir', 'new_file.txt', 'new text')

Bu halda, new_dir\sub_dir-də “yeni mətn” məzmunlu new_file.txt faylı yaradılacaq. Başqa sözlə, aşağıdakı fayl yeni yaradılacaq.new_dir/sub_dir/new_file.txt

Kataloq və fayl adlarının os.path.join() ilə əlaqələndirilməsi.

Həmçinin, open() rejimi arqument kimi müəyyən edilir. Mətn faylları üçün standart ‘w’ yaxşıdır, lakin ikili fayl yaratmaq istəyirsinizsə, mode=’wb’ təyin edin.