Gabim gjatë krijimit të një drejtorie të re me os.mkdir() në një direktori që nuk ekziston
os.mkdir()
Kjo është metoda e përdorur për të krijuar një direktori (dosje) në Python. Nëse përpiqeni të krijoni një direktori të re në një drejtori që nuk ekziston, do të ndodhë një gabim.(FileNotFoundError
)
import os os.mkdir('not_exist_dir/new_dir') # FileNotFoundError
Krijo direktori në mënyrë rekursive me os.madeirs()
Nëse përdorni os.makedirs() në vend të os.mkdir(), ai do të krijojë një direktori të ndërmjetme, kështu që ju mund të krijoni në mënyrë rekursive një drejtori të thellë hierarkike.
os.makedirs('not_exist_dir/new_dir')
Në rastin e këtij shembulli, ai do t’i krijojë të gjitha menjëherë. Është në rregull nëse ka shumë drejtori të reja të ndërmjetme.
- drejtoria e ndërmjetme:
not_exist_dir
- drejtoria përfundimtare:
new_dir
Megjithatë, nëse drejtoria fundore ekziston tashmë, do të ndodhë një gabim.(FileExistsError
)
os.makedirs('exist_dir/exist_dir') # FileExistsError
Nëse ka një argument exist_ok
Që nga Python 3.2, argumenti exist_ok është shtuar, dhe nëse exist_ok=True, nuk do të ndodhë asnjë gabim edhe nëse drejtoria fundore ekziston tashmë. Nëse drejtoria fundore nuk ekziston, do të krijohet një e re, dhe nëse ekziston, asgjë nuk do të bëhet. Kjo është e përshtatshme sepse nuk keni nevojë të kontrolloni paraprakisht ekzistencën e drejtorisë së terminalit.
os.makedirs('exist_dir/exist_dir', exist_ok=True)
Nëse argumenti exist_ok mungon
Nëse keni një version më të vjetër të Python dhe nuk keni argumentin exist_ok në os.madeirs, mund të përdorni os.path.exists për të përcaktuar nëse ka apo jo një direktori fundore dhe më pas të krijoni një të re vetëm nëse nuk ka drejtoria e fundit.
if not os.path.exists('exist_dir/exist_dir'): os.makedirs('exist_dir/exist_dir')