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

पायथन में ज़िप अभिलेखागार के साथ काम करें (ज़िपफाइल)

ज़िप संग्रह और संपीड़न के लिए उपयोग किए जाने वाले सबसे लोकप्रिय फ़ाइल स्वरूपों में से एक है। यह MSDOS और PC के दिनों से उपयोग में है और प्रसिद्ध PKZIP एप्लिकेशन द्वारा उपयोग किया जाता है।

पायथन के मानक पुस्तकालय में ज़िपफाइल मॉड्यूल ऐसी कक्षाएं प्रदान करता है जो ज़िप अभिलेखागार को बनाने, निकालने, पढ़ने और लिखने के लिए उपकरण की सुविधा प्रदान करता है।

ज़िपफाइल ()

यह फ़ंक्शन एक फ़ाइल पैरामीटर से एक ZipFile ऑब्जेक्ट देता है जो एक स्ट्रिंग या फ़ाइल ऑब्जेक्ट हो सकता है जैसा कि बिल्ट-इन ओपन () फ़ंक्शन द्वारा बनाया गया है। फ़ंक्शन को एक मोड पैरामीटर की आवश्यकता होती है जिसका डिफ़ॉल्ट मान 'r' होता है, हालांकि यह क्रमशः पढ़ने, लिखने या संलग्न मोड में संग्रह को खोलने के लिए 'w' या 'a' मान ले सकता है।

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

zipfile.ZIP_STORED एक असम्पीडित संग्रह सदस्य के लिए।
zipfile.ZIP_DEFLATED सामान्य ज़िप संपीड़न विधि के लिए। इसके लिए zlib मॉड्यूल की आवश्यकता है।
zipfile.ZIP_BZIP2 BZIP2 संपीड़न विधि के लिए। इसके लिए bz2 मॉड्यूल की आवश्यकता है।
zipfile.ZIP_LZMA LZMA संपीड़न विधि के लिए। इसके लिए lzma मॉड्यूल की आवश्यकता है।

ZipFile ऑब्जेक्ट निम्न विधियों का उपयोग करता है।

लिखें ()

यह विधि ज़िपफाइल ऑब्जेक्ट द्वारा दर्शाए गए संग्रह को फ़ाइल देती है।

>>> zipfile आयात करें>>> newzip=zipfile.ZipFile('newdir/newzip.zip','w')>>> newzip.write('zen.txt')>>> newzip.close() 

अतिरिक्त फ़ाइल को पहले से मौजूद संग्रह में परिशिष्ट मोड में खोलकर जोड़ा जा सकता है ('ए' मोड के रूप में)

>>> newzip=zipfile.ZipFile('newdir/newzip.zip','a')>>> newzip.write('zen.txt')>>> newzip.close()

पढ़ें ()

यह विधि संग्रह में किसी विशेष फ़ाइल से डेटा पढ़ती है।

>>> newzip=zipfile.ZipFile('newdir/newzip.zip','r')>>> data=newzip.read('json.txt')>>> datab'["Rakesh", { "अंक":[50, 60, 70]}]'

प्रिंटदिर ()

यह विधि दिए गए संग्रह में सभी फाइलों को सूचीबद्ध करती है।

>>> newzip.printdir()फ़ाइल का नाम संशोधित Sizejson.txt 2018-11-2717:04:40 35zen.txt 2018-11-2523:13:44 878

निकालें ()

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

>>> newzip.extract('json.txt','newdir')'newdir\\json.txt'

निकालें ()

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

>>> newzip.extractall('newdir')

getinfo()

यह विधि दी गई फ़ाइल के अनुरूप ZipInfo ऑब्जेक्ट लौटाती है। ZipInfo ऑब्जेक्ट में फ़ाइल की विभिन्न मेटाडेटा जानकारी होती है।

निम्नलिखित कोड संग्रह से 'zen.txt' की ज़िपइन्फो ऑब्जेक्ट प्राप्त करता है और इससे फ़ाइल नाम, आकार और दिनांक-समय की जानकारी पुनर्प्राप्त करता है।

>>> inf =newzip.getinfo('zen.txt')>>> inf.filename,inf.file_size, inf.date_time('zen.txt', 878, (2018, 11, 25, 23, 13, 45))

जानकारी सूची ()

यह विधि संग्रह में सभी फ़ाइल के ZipInfo ऑब्जेक्ट की सूची लौटाती है।

>>> newzip.infolist()[, ]

जैसा कि पहले उल्लेख किया गया है, ज़िप संग्रह का निर्माण करते समय लागू होने वाला संपीड़न एल्गोरिदम संपीड़न पैरामीटर में निर्दिष्ट है। निम्नलिखित कोड में, ZIP-DEFLATED स्थिरांक zlib संपीड़न का उपयोग करके संग्रह बनाता है।

फाइल के लिए फाइलों में:zipobj.write(file)>>> zipobj.close()

नामसूची ()

ZipFile ऑब्जेक्ट की यह विधि संग्रह में सभी फ़ाइलों की सूची लौटाती है।

>>> zipobj =zipfile.ZipFile('txtzip.zip',mode='r')>>> zipobj.namelist()['a!.txt', 'data().txt', 'dict' .txt', 'json.txt', 'LICENSE.txt', 'lines.txt', 'msg.txt', 'NEWS.txt', 'test.txt/', 'zen.txt', 'zen1. txt', 'zenbak.txt']

सेटपासवर्ड ()

यह विधि पासवर्ड पैरामीटर सेट करती है जो संग्रह को निकालने के समय प्रदान किया जाना चाहिए।

PyZipFile()

zipfile मॉड्यूल में यह फ़ंक्शन PyZipFile ऑब्जेक्ट देता है। PyZipFile ऑब्जेक्ट .py एक्सटेंशन वाली फ़ाइलों वाले मॉड्यूल का निर्माण कर सकता है। इस संग्रह को sys.path पर्यावरण चर में जोड़ा जा सकता है ताकि मॉड्यूल को zipimport मॉड्यूल का उपयोग करके आयात किया जा सके।

राइटपी () विधि .py फ़ाइल को संबंधित .pyc फ़ाइल में संकलित करने के बाद संग्रह में जोड़ती है।

फ़ाइल के लिए फ़ाइलें:pyzipobj.writepy(file)>>> pyzipobj.close()

इस लेख में ज़िपफाइल मॉड्यूल में कक्षाओं और कार्यों पर चर्चा की गई है।


  1. बोकेह (पायथन) में छवियों के साथ कैसे काम करें?

    बोकेह में छवियों के साथ काम करने के लिए, image_url() . का उपयोग करें विधि और छवियों की एक सूची पास करें। कदम किसी फ़ाइल में सहेजे गए आउटपुट को उत्पन्न करने के लिए डिफ़ॉल्ट आउटपुट स्थिति को कॉन्फ़िगर करें जब :func:show कहा जाता है। प्लॉटिंग के लिए एक नया चित्र बनाएं। दिए गए URL से लोड की गई छवियों क

  1. पायथन में कैरेक्टर सबस्ट्रिंग के साथ काम करने के लिए Tensorflow का उपयोग कैसे किया जा सकता है?

    कैरेक्टर सबस्ट्रिंग्स का उपयोग टेन्सरफ़्लो के साथ सबस्ट्र विधि का उपयोग करके किया जा सकता है जो टेन्सरफ़्लो के स्ट्रिंग्स मॉड्यूल में मौजूद है। फिर इसे एक Numpy सरणी में बदल दिया जाता है और फिर प्रदर्शित किया जाता है। और पढ़ें: TensorFlow क्या है और Keras कैसे तंत्रिका नेटवर्क बनाने के लिए TensorFl

  1. पायथन - PyGame के साथ चित्र प्रदर्शित करें

    Pygame गेम और मल्टीमीडिया एप्लिकेशन बनाने के लिए Python के लिए एक मल्टीमीडिया लाइब्रेरी है। इस लेख में हम देखेंगे कि pygame विंडो में इसकी ऊंचाई, चौड़ाई और स्थिति को ध्यान में रखते हुए स्क्रीन पर चित्र को पेंट करने के लिए pygame मॉड्यूल का उपयोग कैसे करें। नीचे दिए गए प्रोग्राम में हम pygame मॉड्यू