Python मा फोल्डर बनाउने/मेटाउने तरिका | os र pathlib प्रयोग

1. Python मा फोल्डर बनाउने आधारभूत विधि

Python मा, मानक पुस्तकालय प्रयोग गरेर सजिलै फोल्डर बनाउने तरिका छ। मुख्य रूपमा प्रयोग हुने हो os मोड्युल। यस भागमा, os मोड्युल प्रयोग गरेर फोल्डर बनाउने विधि बारे विस्तृत रूपमा व्याख्या गर्नेछौं।

Python मा फोल्डर बनाउने विधि:os मोड्युल

os मोड्युल प्रयोग गरेर, प्रोग्राम भित्र फोल्डर बनाउन सकिन्छ। यो डेटा व्यवस्थित गर्न वा लग सुरक्षित गर्नको लागि डाइरेक्टरी बनाउने जस्ता अवस्थामा उपयोगी हुन्छ। फोल्डर बनाउने आधारभूत विधि तलको जस्तै छ।
import os

# बनाउने फोल्डरको पथ निर्दिष्ट गर्नुहोस्
path = 'example_folder'

# फोल्डर बनाउनुहोस्
os.mkdir(path)
यो कोडमा, os.mkdir() फङ्क्शन प्रयोग गरेर, नयाँ फोल्डर “example_folder” बनाइरहेको छ। तर, यदि फोल्डर पहिले नै अवस्थित छ भने, यो फङ्क्शनले FileExistsError उत्पन्न गर्छ।

बहु-स्तरीय फोल्डर बनाउने:os.makedirs()

एकल फोल्डर मात्र होइन, बहु-स्तरीय डाइरेक्टरी एकै पटक बनाउन चाहनुहुन्छ भने, os.makedirs() फङ्क्शन प्रयोग गर्नुहोस्।
import os

# बहु-स्तरीय फोल्डर निर्दिष्ट गर्नुहोस्
path = 'example_folder/subfolder'

# अभिभावक डाइरेक्टरी नअवस्थित भए पनि फोल्डर बनाउनुहोस्
os.makedirs(path)
यसरी, os.makedirs() प्रयोग गर्दा, निर्दिष्ट पथमा नअवस्थित अभिभावक डाइरेक्टरी पनि एकै साथ बनाइन सक्छ। यसले फोल्डर संरचना एकै पटक बनाउने सुविधा प्रदान गर्दछ।

त्रुटि ह्यान्डलिङ:exist_ok=True को प्रयोग

यदि फोल्डर पहिले नै अवस्थित छ भने पनि त्रुटि नउत्पन्न गराई प्रक्रिया जारी राख्न चाहनुहुन्छ भने, exist_ok=True विकल्प प्रयोग गर्नुहोस्। तलको उदाहरण जस्तै सेट गर्दा, फोल्डर अवस्थित भए पनि त्रुटि उत्पन्न हुँदैन।
import os

path = 'example_folder/subfolder'

# यदि फोल्डर पहिले नै अवस्थित छ भने पनि त्रुटि बेवास्ता गर्नुहोस्
os.makedirs(path, exist_ok=True)
यसले गर्दा, प्रोग्राम प्रत्येक पटक चल्दा एउटै फोल्डर बनाउने प्रयास गर्दा पनि त्रुटि नआउँदा, बलियो कोड लेख्न सकिन्छ।

2. Pathlib मोड्युल प्रयोग गरेर फोल्डर सिर्जना

Python 3.4 पछि, pathlib मोड्युल मानक पुस्तकालयमा थपियो। यो मोड्युलले वस्तु-उन्मुख तरिकाले पथको सञ्चालन गर्न सक्छ, र सहज रूपमा फोल्डर सिर्जना गर्न सम्भव बनाउँछ। यहाँ, pathlib मोड्युल प्रयोग गरेर फोल्डर सिर्जना गर्ने तरिका व्याख्या गरिन्छ।

Pathlib मोड्युलको प्रयोग

pathlib.Path() प्रयोग गरेर, डाइरेक्टरी सिर्जना गर्न सम्भव हुन्छ। os मोड्युल जस्तै, exist_ok=True निर्दिष्ट गरेर, यदि पहिले नै फोल्डर अवस्थित छ भने पनि त्रुटि टाल्न सकिन्छ।
from pathlib import Path

# सिर्जना गर्न चाहेको फोल्डरको पथ निर्दिष्ट गर्नुहोस्
path = Path('example_folder/subfolder')

# फोल्डर सिर्जना गर्नुहोस्
path.mkdir(parents=True, exist_ok=True)
यो कोडमा, parents=True निर्दिष्ट गरेर, यदि अभिभावक डाइरेक्टरी अवस्थित छैन भने पनि सँगै सिर्जना हुन्छ। यसले os.makedirs() जस्तै कार्यसम्पादन प्राप्त गर्न सम्भव बनाउँछ।

Pathlib मोड्युलको लाभ

pathlib मोड्युलको मुख्य विशेषता भनेको वस्तु-उन्मुख सञ्चालन सम्भव हुनु हो। Path वस्तु प्रयोग गरेर, फोल्डर सिर्जना बाहेक, पथको संयोजन र फाइल सञ्चालन पनि सहज रूपमा गर्न सकिन्छ। यसले कोडको पढ्नयोग्यता र मर्मत सम्भावनामा सुधार ल्याउँछ।
年収訴求

3. फोल्डर सिर्जनामा त्रुटि ह्यान्डलिङ

फोल्डर सिर्जना गर्दा विभिन्न त्रुटिहरू उत्पन्न हुन सक्छन्। उदाहरणका लागि, अनुमति अपर्याप्त भएको अवस्थामा वा निर्दिष्ट पथ अमान्य भएको अवस्थामा। यस खण्डमा, त्रुटि ह्यान्डलिङको कार्यान्वयन विधि बारे व्याख्या गरिन्छ।

अनुमति त्रुटि र अमान्य पथको समाधान

os.makedirs()pathlib.Path().mkdir() प्रयोग गरेर फोल्डर सिर्जना गर्दा उत्पन्न हुने सामान्य त्रुटिहरूमा PermissionErrorFileNotFoundError समावेश छन्। यी त्रुटिहरूलाई उपयुक्त रूपमा ह्यान्डल गरेर, अझ मजबुत प्रोग्राम बनाउन सकिन्छ। तल त्रुटि ह्यान्डलिङको उदाहरण छ।
import os

path = 'example_folder/subfolder'

try:
    os.makedirs(path, exist_ok=True)
    print(f'फोल्डर "{path}" सिर्जना गरिएको छ।')
except PermissionError:
    print('फोल्डर सिर्जना गर्ने अनुमति छैन।')
except FileNotFoundError:
    print('निर्दिष्ट पथ अमान्य छ।')
except Exception as e:
    print(f'अप्रत्याशित त्रुटि उत्पन्न भयो: {e}')
यो कोडले सामान्य त्रुटिहरूको लागि प्रत्येक समाधान देखाउँछ, अप्रत्याशित त्रुटिहरूलाई पनि ह्यान्डल गर्दछ। यसले प्रोग्रामलाई रोकिएन, त्रुटिहरूलाई उपयुक्त रूपमा प्रक्रिया गर्न मद्दत गर्छ।

अधिक उन्नत त्रुटि ह्यान्डलिङ

फोल्डर सिर्जना असफल हुन सक्ने परिस्थितिहरूमा, त्रुटिको विवरणलाई लगमा रेकर्ड गर्ने वा प्रयोगकर्तालाई सूचित गर्ने विचार गर्नुपर्छ। विशेष गरी ठूला अनुप्रयोगहरूमा, त्रुटि प्रक्रिया प्रयोगकर्ता अनुभवमा ठूलो प्रभाव पार्ने कारण पर्याप्त उपाय आवश्यक हुन्छ।

4. फोल्डर मेटाउने तरिका

फोल्डर सिर्जना गर्नु मात्र होइन, अब आवश्यक नपरेका फोल्डरहरू मेटाउने पनि प्रायः गरिन्छ। Python मा, मानक पुस्तकालयको os मोड्युल वा shutil मोड्युल प्रयोग गरेर फोल्डर मेटाउन सकिन्छ। यहाँ, त्यसको विशिष्ट तरिकाबारे व्याख्या गरिन्छ।

os.rmdir() प्रयोग गरेर फोल्डर मेटाउने

os मोड्युलमा rmdir() नामको फंक्शन छ, जसले फोल्डर मेटाउन सक्छ। तर, यो फंक्शनले मेटाइने फोल्डर खाली हुनुपर्छ भन्ने प्रतिबन्ध छ।
import os

# मेटाइने फोल्डरको पथ निर्दिष्ट गर्नुहोस्
path = 'example_folder/subfolder'

# फोल्डर मेटाउनुहोस्
os.rmdir(path)
यो कोडले निर्दिष्ट फोल्डर खाली भएको अवस्थामा मात्र सही रूपमा काम गर्छ। फोल्डरभित्र फाइल वा अन्य डाइरेक्टरीहरू भएमा, OSError उत्पन्न हुन्छ।

shutil.rmtree() प्रयोग गरेर फोल्डरको पुनरावृत्तिमूलक मेटाउने

फोल्डरभित्र फाइल वा अन्य सबफोल्डरहरू भएमा, shutil मोडुलको rmtree() फंक्शन प्रयोग गरेर फोल्डर र यसको सामग्रीलाई पुनरावृत्तिमूलक रूपमा मेटाउन सकिन्छ।
import shutil

# मेटाइने फोल्डरको पथ निर्दिष्ट गर्नुहोस्
path = 'example_folder/subfolder'

# फोल्डर र यसको सामग्री मेटाउनुहोस्
shutil.rmtree(path)
यो विधि खाली नभएको डाइरेक्टरी भएपनि समस्या बिना फोल्डर मेटाउन सकिन्छ, त्यसैले सम्पूर्ण डाइरेक्टरी ट्री मेटाउँदा उपयोगी हुन्छ। तर, मेटाइएका फाइल वा फोल्डरहरू पुनर्स्थापना गर्न सकिँदैन, त्यसैले सावधानीपूर्वक ह्यान्डल गर्न आवश्यक छ।

त्रुटि ह्यान्डलिङ

फोल्डर मेटाउँदा पनि, त्रुटि ह्यान्डलिङ महत्त्वपूर्ण हुन्छ। उदाहरणका लागि, मेटाइने फोल्डरको अनुमति नहुनु वा निर्दिष्ट पथ अमान्य हुनुमा त्रुटि उत्पन्न हुन्छ। तल, त्रुटि ह्यान्डलिङसहितको कोड उदाहरण छ।
import shutil

path = 'example_folder/subfolder'

try:
    shutil.rmtree(path)
    print(f'फोल्डर "{path}" मेटाइयो।')
except PermissionError:
    print('फोल्डर मेटाउने अनुमति छैन।')
except FileNotFoundError:
    print('निर्दिष्ट फोल्डर फेला परेन।')
except Exception as e:
    print(f'अनपेक्षित त्रुटि उत्पन्न भयो: {e}')
यो कोडले मेटाउँदा उत्पन्न हुने त्रुटिहरूलाई ह्यान्डल गर्छ, र अनपेक्षित त्रुटिहरूलाई पनि लचिलो रूपमा सामना गर्छ।

5. व्यावहारिक अनुप्रयोग केसहरू

यहाँ, फोल्डर निर्माण र मेटाउने कार्यलाई संयोजन गरेर, वास्तविक परियोजना र डेटा प्रोसेसिङमा उपयोगी अनुप्रयोग केसहरू प्रस्तुत गरिन्छ। विशेष गरी, वार्षिक वा मासिक डेटा फोल्डर अनुसार व्यवस्थित गर्ने केसहरूलाई विचार गरिएको छ।

वर्ष र महिना अनुसार फोल्डर निर्माण

उदाहरणका लागि, डेटा वार्षिक वा मासिक रूपमा व्यवस्थित गर्न चाहनुहुन्छ भने, स्वचालित रूपमा फोल्डर निर्माण गर्ने स्क्रिप्ट बनाउन सकिन्छ।
import os
from datetime import datetime

# वर्तमान वर्ष र महिना प्राप्त गर्नुहोस्
current_year = datetime.now().year
current_month = datetime.now().month

# फोल्डरको पथ सेट गर्नुहोस्
folder_path = f'data/{current_year}/{current_month}'

# फोल्डर निर्माण गर्नुहोस्
os.makedirs(folder_path, exist_ok=True)
print(f'फोल्डर "{folder_path}" सिर्जना गरिएको छ।')
यो स्क्रिप्ट वर्तमान वर्ष र महिना आधारमा स्वचालित रूपमा फोल्डर निर्माण गर्दछ, जसले डेटा प्रभावकारी रूपमा व्यवस्थित गर्न मद्दत गर्दछ।

फोल्डरको एकैपटक मेटाउने

विशिष्ट शर्तहरूमा आधारित, अनावश्यक फोल्डरहरूलाई एकैपटक मेटाउन चाहनुहुन्छ भने, Python प्रयोग गरेर प्रभावकारी रूपमा प्रक्रिया गर्न सकिन्छ। उदाहरणका लागि, निश्चित अवधि भन्दा पुराना पुराना डेटा फोल्डरहरूलाई मेटाउने स्क्रिप्ट बनाउन सम्भव छ।
import shutil
import os
from datetime import datetime, timedelta

# 30 दिन पहिलेको मिति प्राप्त गर्नुहोस्
threshold_date = datetime.now() - timedelta(days=30)

# मेटाउने फोल्डरको आधार पथ
base_path = 'data/'

# फोल्डर जाँच गर्नुहोस्, पुरानो फोल्डर मेटाउनुहोस्
for folder_name in os.listdir(base_path):
    folder_path = os.path.join(base_path, folder_name)
    if os.path.isdir(folder_path):
        folder_date = datetime.strptime(folder_name, '%Y-%m-%d')
        if folder_date < threshold_date:
            shutil.rmtree(folder_path)
            print(f'पुरानो फोल्डर "{folder_path}" मेटाइएको छ।')
यस प्रकारका अनुप्रयोग केसहरूमा, प्रोग्राम प्रयोग गरेर फोल्डरको व्यवस्थापन र व्यवस्थितलाई स्वचालित बनाइ, म्यानुअल कार्यलाई हटाउन सकिन्छ।

6. सारांश

यस लेखमा, Python प्रयोग गरेर फोल्डर सिर्जना र मेटाउने तरिकाहरूको व्याख्या गरिएको छ।os मोड्युल र pathlib मोड्युल प्रयोग गरेर आधारभूत सञ्चालन विधिहरूबाट, फोल्डर सिर्जना गर्दा त्रुटि ह्यान्डलिङ र वास्तविक प्रयोग केसहरू सम्म विस्तृत रूपमा प्रस्तुत गरिएको छ।यी ज्ञानहरूलाई प्रयोग गरेर, डेटा र फाइलहरूलाई प्रभावकारी रूपमा व्यवस्थापन गर्ने कार्यक्रम बनाउन सकिन्छ। अर्को चरणको रूपमा, फोल्डर सिर्जना र मेटाउनेसँगै, फाइल सञ्चालन र सङ्कुचन जस्ता उन्नत डेटा व्यवस्थापन प्रविधिहरू पनि सिक्नुपर्छ।