makedirs ku di Python-ê de pelrêçekên hiyerarşîk ên kûr bi vegerî biafirînin

Dikan

Di pelrêçeke tine de dema pelrêçekek nû bi os.mkdir() diafirîne xeletî

os.mkdir()Ev rêbaz e ku ji bo çêkirina peldankek (peldank) di Python de tê bikar anîn. Ger hûn hewl bidin ku pelrêçek nû di pelrêçekek tune de biafirînin, dê xeletiyek çêbibe.(FileNotFoundError)

import os

os.mkdir('not_exist_dir/new_dir')
# FileNotFoundError

Bi os.madeirs() pelrêçan bi paşverû biafirînin.

Heke hûn li şûna os.mkdir() os.makedirs() bikar bînin, ew ê pelrêçek navîn çêbike, ji ber vê yekê hûn dikarin bi paşverû pelrêçek kûr a hiyerarşîk biafirînin.

os.makedirs('not_exist_dir/new_dir')

Di rewşa vê nimûneyê de wê hemûyan bi carekê ve biafirîne. Baş e heke gelek pelrêçên navîn ên nû hebin.

  • pelrêça navîn:not_exist_dir
  • pelrêça dawî:new_dir

Lêbelê, heke pelrêça dawî jixwe hebe, dê xeletiyek çêbibe.(FileExistsError)

os.makedirs('exist_dir/exist_dir')
# FileExistsError

Ger argumanek hebe exist_ok

Ji Python 3.2 ve, argumana exist_ok hatiye zêdekirin, û heke exist_ok=Rast e, heke pelrêça dawî jixwe hebe jî tu xeletî dernakeve. Ger pelrêça paşîn tune be, dê yek nû were afirandin, û heke hebe, dê tiştek neyê kirin. Ev hêsan e ji ber ku hûn ne hewce ne ku hebûna pelrêça termînalê pêşwext kontrol bikin.

os.makedirs('exist_dir/exist_dir', exist_ok=True)

Ger argumana exist_ok winda ye

Ger guhertoyek we ya kevntir a Python heye û di os.madeirs de argumana exist_ok tune ye, hûn dikarin os.path.exists bikar bînin da ku hûn diyar bikin ka pelrêçek dawiya we heye an na, û dûv re tenê heke tune be yek nû biafirînin. pelrêça dawî.

if not os.path.exists('exist_dir/exist_dir'):
    os.makedirs('exist_dir/exist_dir')