makedirs లోతైన క్రమానుగత డైరెక్టరీలను పైథాన్‌లో పునరావృతంగా సృష్టించడానికి

వ్యాపారం

ఉనికిలో లేని డైరెక్టరీలో os.mkdir()తో కొత్త డైరెక్టరీని సృష్టిస్తున్నప్పుడు లోపం

os.mkdir()ఇది పైథాన్‌లో డైరెక్టరీని (ఫోల్డర్) సృష్టించడానికి ఉపయోగించే పద్ధతి. మీరు ఉనికిలో లేని డైరెక్టరీలో కొత్త డైరెక్టరీని సృష్టించడానికి ప్రయత్నిస్తే, లోపం ఏర్పడుతుంది.(FileNotFoundError)

import os

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

os.madeirs()తో డైరెక్టరీలను పునరావృతంగా సృష్టించండి

మీరు os.mkdir()కి బదులుగా os.makedirs()ని ఉపయోగిస్తే, అది ఇంటర్మీడియట్ డైరెక్టరీని సృష్టిస్తుంది, కాబట్టి మీరు ఒక లోతైన క్రమానుగత డైరెక్టరీని పునరావృతంగా సృష్టించవచ్చు.

os.makedirs('not_exist_dir/new_dir')

ఈ ఉదాహరణ విషయంలో, ఇది ఒకేసారి అన్నింటినీ సృష్టిస్తుంది. బహుళ కొత్త ఇంటర్మీడియట్ డైరెక్టరీలు ఉంటే సరే.

  • ఇంటర్మీడియట్ డైరెక్టరీ:not_exist_dir
  • చివరి డైరెక్టరీ:new_dir

అయినప్పటికీ, ముగింపు డైరెక్టరీ ఇప్పటికే ఉన్నట్లయితే, ఒక లోపం ఏర్పడుతుంది.(FileExistsError)

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

ఏదైనా వాదన ఉంటే ఉనికిలో_సరే

పైథాన్ 3.2 నుండి, ఆర్గ్యుమెంట్ ఉనికి_ఓక్ జోడించబడింది మరియు exist_ok=True అయితే, ఎండ్ డైరెక్టరీ ఇప్పటికే ఉన్నప్పటికి ఎటువంటి దోషం జరగదు. ముగింపు డైరెక్టరీ ఉనికిలో లేకుంటే, కొత్తది సృష్టించబడుతుంది మరియు అది ఉనికిలో ఉంటే, ఏమీ చేయబడదు. మీరు టెర్మినల్ డైరెక్టరీ ఉనికిని ముందుగానే తనిఖీ చేయనవసరం లేనందున ఇది సౌకర్యవంతంగా ఉంటుంది.

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

ఆర్గ్యుమెంట్ ఉనికిలో ఉంటే_ok లేదు

మీరు పైథాన్ యొక్క పాత సంస్కరణను కలిగి ఉంటే మరియు os.madeirsలో ఉనికి_ok అనే వాదన లేకుంటే, మీరు ముగింపు డైరెక్టరీ ఉందో లేదో నిర్ధారించడానికి os.path.existsని ఉపయోగించవచ్చు, ఆపై అది లేనట్లయితే మాత్రమే కొత్త దాన్ని సృష్టించండి. ముగింపు డైరెక్టరీ.

if not os.path.exists('exist_dir/exist_dir'):
    os.makedirs('exist_dir/exist_dir')
Copied title and URL