makedirs ازگر میں بار بار گہری درجہ بندی کی ڈائریکٹریز بنانے کے لیے

کاروبار

ایک غیر موجود ڈائرکٹری میں os.mkdir() کے ساتھ نئی ڈائرکٹری بناتے وقت خرابی۔

os.mkdir()یہ وہ طریقہ ہے جو Python میں ڈائریکٹری (فولڈر) بنانے کے لیے استعمال ہوتا ہے۔ اگر آپ غیر موجود ڈائرکٹری میں نئی ​​ڈائرکٹری بنانے کی کوشش کرتے ہیں تو ایک خرابی واقع ہو جائے گی۔(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 کو شامل کر دیا گیا ہے، اور اگر exist_ok=True ہے، تو کوئی خرابی پیدا نہیں ہو گی چاہے اینڈ ڈائرکٹری پہلے سے موجود ہو۔ اگر اختتامی ڈائرکٹری موجود نہیں ہے تو، ایک نئی بنائی جائے گی، اور اگر یہ موجود ہے، تو کچھ نہیں کیا جائے گا۔ یہ آسان ہے کیونکہ آپ کو پہلے سے ٹرمینل ڈائرکٹری کے وجود کی جانچ کرنے کی ضرورت نہیں ہے۔

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

اگر argument exist_ok غائب ہے۔

اگر آپ کے پاس Python کا پرانا ورژن ہے اور آپ کے پاس os.madeirs میں دلیل exist_ok نہیں ہے، تو آپ os.path.exists استعمال کر سکتے ہیں یہ تعین کرنے کے لیے کہ آیا کوئی اینڈ ڈائرکٹری موجود ہے یا نہیں، اور پھر صرف اس صورت میں ایک نئی تخلیق کر سکتے ہیں جب کوئی نہ ہو۔ اختتامی ڈائریکٹری۔

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