os.path मॉड्यूल एक बहुत व्यापक रूप से उपयोग किया जाने वाला मॉड्यूल है जो सिस्टम में विभिन्न स्थानों से फ़ाइलों को प्रोसेस करते समय काम आता है। इसका उपयोग विभिन्न उद्देश्यों के लिए किया जाता है जैसे पायथन में पथ नामों को मर्ज करना, नॉर्मलाइज़ करना और पुनर्प्राप्त करना। ये सभी फ़ंक्शन्स केवल बाइट्स या केवल स्ट्रिंग ऑब्जेक्ट्स को अपने पैरामीटर्स के रूप में स्वीकार करते हैं। इसके परिणाम उस OS के लिए विशिष्ट होते हैं जिस पर यह चलाया जा रहा है।
os.path.basename
यह फ़ंक्शन हमें पथ का अंतिम भाग देता है जो एक फ़ोल्डर या फ़ाइल नाम हो सकता है। कृपया विंडोज और लिनक्स में पथ के उल्लेख के अंतर को देखें - बैकस्लैश और फॉरवर्ड स्लैश के संदर्भ में।
उदाहरण
import os
# विंडोज में
fldr = os.path.basename("C:\\Users\\xyz\\Documents\\My Web Sites")
print(fldr) # My Web Sites
file = os.path.basename("C:\\Users\\xyz\\Documents\\My Web Sites\\intro.html")
print(file) # intro.html
# यूनिक्स/लिनक्स में
fldr = os.path.basename("/Documents/MyWebSites")
print(fldr) # MyWebSites
file = os.path.basename("/Documents/MyWebSites/music.txt")
print(file) # music.txt
उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है:
आउटपुट
My Web Sites intro.html MyWebSites music.txt
os.path.dirname
यह फ़ंक्शन हमें निर्देशिका का नाम देता है जहां फ़ोल्डर या फ़ाइल स्थित है।
उदाहरण
import os
# विंडोज में
DIR = os.path.dirname("C:\\Users\\xyz\\Documents\\My Web Sites")
print(DIR) # C:\Users\xyz\Documents
# यूनिक्स/लिनक्स में
DIR = os.path.dirname("/Documents/MyWebSites")
print(DIR) # /Documents
उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है:
आउटपुट
C:\Users\xyz\Documents /Documents
os.path.isfile
कभी-कभी हमें जांचना पड़ सकता है कि दिया गया पूर्ण पथ फ़ोल्डर को दर्शाता है या फ़ाइल को। यदि फ़ाइल मौजूद नहीं है तो यह False आउटपुट देगा। यदि फ़ाइल मौजूद है तो आउटपुट True होगा।
उदाहरण
import os
# विंडोज में
IS_FILE = os.path.isfile("C:\\Users\\xyz\\Documents\\My Web Sites\\intro.html")
print(IS_FILE) # True (यदि फ़ाइल मौजूद है)
IS_FILE = os.path.isfile("C:\\Users\\xyz\\Documents\\My Web Sites")
print(IS_FILE) # False (यह फ़ोल्डर है)
# यूनिक्स/लिनक्स में
IS_FILE = os.path.isfile("/Documents/MyWebSites")
print(IS_FILE) # False
IS_FILE = os.path.isfile("/Documents/MyWebSites/music.txt")
print(IS_FILE) # True (यदि फ़ाइल मौजूद है)
os.path.normpath
यह एक दिलचस्प फ़ंक्शन है जो दिए गए पथ को अतिरिक्त स्लैश हटाकर या बैकस्लैश को फॉरवर्ड स्लैश में बदलकर नॉर्मलाइज़ करता है, इस पर निर्भर करता है कि यह किस OS पर है। जैसा कि आप नीचे आउटपुट में देख सकते हैं, आउटपुट इस बात पर निर्भर करता है कि आप प्रोग्राम किस OS पर चलाते हैं।
उदाहरण
import os
# विंडोज पथ
NORM_PATH = os.path.normpath("C:/Users/Pradeep/Documents/My Web Sites")
print(NORM_PATH)
# यूनिक्स पथ
NORM_PATH = os.path.normpath("/home/ubuuser//Documents/")
print(NORM_PATH)
उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है:
आउटपुट
# विंडोज में चलाने पर C:\Users\Pradeep\Documents\My Web Sites \home\ubuuser\Documents # लिनक्स में चलाने पर C:/Users/Pradeep/Documents/My Web Sites /home/ubuuser/Documents
अन्य उपयोगी फ़ंक्शन्स:
os.path.join()- पथ घटकों को जोड़ता हैos.path.split()- पथ को (हेड, टेल) में विभाजित करता हैos.path.splitext()- एक्सटेंशन को अलग करता हैos.path.exists()- पथ मौजूद है या नहीं जांचताos.path.isdir()- निर्देशिका है या नहीं जांचताos.path.getsize()- फ़ाइल आकार लौटाता है