Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में हाई-लेवल फ़ाइल ऑपरेशन्स (shutil मॉड्यूल)

पायथन की स्टैंडर्ड लाइब्रेरी के shutil मॉड्यूल में फ़ाइलों और डायरेक्ट्रीज़ पर हाई लेवल ऑपरेशन्स के लिए कई फ़ंक्शन्स परिभाषित हैं।

copy()

यह फ़ंक्शन किसी फ़ाइल को उसी या अन्य डायरेक्टरी में निर्दिष्ट फ़ाइल में कॉपी करता है। फ़ंक्शन का पहला पैरामीटर मौजूदा फ़ाइल का स्ट्रिंग रिप्रेजेंटेशन है। दूसरा तर्क या तो परिणामी फ़ाइल का नाम है या डायरेक्टरी। यदि यह डायरेक्टरी है, तो फ़ाइल उसी नाम से इसमें कॉपी होती है। मूल फ़ाइल का मेटाडेटा बनाए नहीं रखा जाता।

>>> import shutil
>>> shutil.copy("hello.py", "newdir/")
'newdir/hello.py'

copy2()

यह फ़ंक्शन copy() फ़ंक्शन के समान है सिवाय इसके कि यह सोर्स फ़ाइल का मेटाडेटा बरकरार रखता है। उदाहरण के लिए परिणामी फ़ाइल की डेट मॉडिफाइड प्रॉपर्टी मूल फ़ाइल के समान होगी।

>>> shutil.copy2('person.py', 'newdir/')
'newdir/person.py'

copyfile()

इस फ़ंक्शन के दो स्ट्रिंग तर्क फ़ाइल नामों को दर्शाते हैं। इसका मतलब है मूल फ़ाइल को उसी डायरेक्टरी में निर्दिष्ट नाम से कॉपी किया जाता है।

>>> shutil.copyfile('start.py', 'end.py')
'end.py'

copyfileobj()

इस फ़ंक्शन के पैरामीटर्स फ़ाइल ऑब्जेक्ट्स हैं न कि फ़ाइलों को दर्शाने वाले स्ट्रिंग्स। फ़ाइल ऑब्जेक्ट्स open() फ़ंक्शन द्वारा प्राप्त किए जाते हैं। मूल फ़ाइल में रीड परमिशन होनी चाहिए और परिणामी फ़ाइल को राइट परमिशन के साथ खोला जाना चाहिए।

>>> f1 = open('hello.py', 'r')
>>> f2 = open('python.py', 'w')
>>> shutil.copyfileobj(f1, f2)

move()

यह फ़ंक्शन फ़ाइलों और डायरेक्ट्रीज़ को एक डायरेक्टरी से दूसरी में रिकर्सिवली मूव करता है।

>>> shutil.move('hello.py', 'newdir/')
'newdir/hello.py'

copytree()

यह फ़ंक्शन एक डायरेक्टरी में फ़ाइलों और सबडायरेक्ट्रीज़ को दूसरी डायरेक्टरी में रिकर्सिवली कॉपी करता है। दोनों पैरामीटर्स के नाम स्ट्रिंग होने चाहिए। दूसरे पैरामीटर के नाम की डायरेक्टरी पहले से मौजूद नहीं होनी चाहिए। अलग-अलग फ़ाइलों को कॉपी करने के लिए आंतरिक रूप से copy2() फ़ंक्शन उपयोग किया जाता है।

>>> shutil.copytree('dir1', 'dir2')
'dir2'

rmtree()

यह फ़ंक्शन निर्दिष्ट डायरेक्टरी में फ़ाइलों और सबडायरेक्ट्रीज़ को हटाता है।

>>> shutil.rmtree('dir2')
>>> shutil.move('hello.py', 'newdir/')
'newdir/hello.py'

disk_usage()

यह फ़ंक्शन दी गई डायरेक्टरी के उपयोग के आंकड़े प्राप्त करता है।

>>> shutil.disk_usage('c:\\python36\\dir1')
usage(total=245681352704, used=84932993024, free=160748359680)

which()

यह फ़ंक्शन एक्ज़ीक्यूटेबल का पथ लौटाता है।

>>> shutil.which('calc')
'C:\\WINDOWS\\system32\\calc.EXE'

make_archive()

यह फ़ंक्शन रूट डायरेक्टरी में फ़ाइलों का आर्काइव (zip या tar) बनाता है।

>>> root_dir = 'newdir'
>>> shutil.make_archive("newdirarch", "zip", root_dir)
'C:\\python36\\newdirarch.zip'

get_archive_formats()

यह फ़ंक्शन सभी समर्थित आर्काइव फॉर्मेट्स की सूची देता है।

>>> shutil.get_archive_formats()
[('bztar', "bzip2'ed tar-file"), ('gztar', "gzip'ed tar-file"), ('tar', 'uncompressed tar file'), ('xztar', "xz'ed tar-file"), ('zip', 'ZIP file')]

unpack_archive()

यह फ़ंक्शन दिए गए आर्काइव में फ़ाइलों को निकालता है। दूसरा पैरामीटर वह डायरेक्टरी है जिसमें फ़ाइलों को निकाला जाना है। यदि नहीं दिया गया, तो अनपैकिंग करंट डायरेक्टरी में की जाती है।

>>> shutil.unpack_archive('newdirarch.zip', 'newdir')
  1. पायथन में openpyxl का उपयोग करके एक्सेल फ़ाइल में अंकगणितीय संक्रियाएँ पायथन में openpyxl का उपयोग करके एक्सेल फ़ाइल में अंकगणितीय संक्रियाएँ

    पायथन हमें पायथन वातावरण से सीधे एक्सेल फ़ाइलों का उपयोग करने में मदद कर सकता है। हम एक्सेल में प्रत्येक सेल या सेल की एक श्रृंखला को संदर्भित कर सकते हैं और उन सेल पर अंकगणितीय ऑपरेटर लागू कर सकते हैं। उन संक्रियाओं के परिणामों को भी कुछ सेल में संग्रहीत किया जा सकता है जिनके स्थान को पायथन प्रोग्र

  1. पायथन में फाइल ऑब्जेक्ट्स: पूरी गाइड पायथन में फाइल ऑब्जेक्ट्स: पूरी गाइड

    पायथन में, जब भी हम फाइल्स पढ़ने या लिखने का प्रयास करते हैं, हमें कोई लाइब्रेरी इम्पोर्ट करने की आवश्यकता नहीं होती क्योंकि यह नेटिवली हैंडल किया जाता है। सबसे पहली चीज जो हम करेंगे वह है बिल्ट-इन open फंक्शन का उपयोग करके एक फाइल ऑब्जेक्ट प्राप्त करना। open फंक्शन एक फाइल खोलता है और एक फाइल ऑब्ज

  1. पायथन में जंक फाइल ऑर्गनाइज़र पायथन में जंक फाइल ऑर्गनाइज़र

    यह एक आलसी पायथन प्रोग्रामर के लिए बहुत उपयोगी लग सकता है जो अधिकांश फाइलों और फोल्डर्स को एक स्थान पर रखता है और कभी-कभी भ्रमित होता है कि वहां कौन सी फाइलें हैं और निश्चित रूप से वह इसे मैन्युअल रूप से करने के लिए बहुत आलसी है। तो नीचे एक पायथन प्रोग्राम है जो एक ही बार में सब कुछ उपयुक्त फोल्डर