Python उदाहरण के साथ ज़िप फ़ाइल

⚡ स्मार्ट सारांश

Python यह बिल्ट-इन shutil और zipfile मॉड्यूल का उपयोग करके ZIP आर्काइव बनाता है। यहाँ आप make_archive() का उपयोग करके पूरी डायरेक्टरी को ज़िप करना, ZipFile का उपयोग करके विशिष्ट फ़ाइलों को ज़िप करना और ex के बारे में जानेंगे।tract, list, और आर्काइव की सामग्री पढ़ें।

  • मेक_आर्काइव(): shutil.make_archive() एक पूरी डायरेक्टरी को .zip फ़ाइल में ज़िप कर देता है।
  • 📄 ज़िपफ़ाइल.राइट(): ZipFile.write() एक-एक करके विशिष्ट फ़ाइलों को संग्रह में जोड़ता है।
  • 📂 extracलंबा(): ZipFile.extractall() फ़ंक्शन आर्काइव से सभी फ़ाइलों को एक फ़ोल्डर में अनज़िप करता है।
  • ???? नामसूची(): ZipFile.namelist() ज़िप आर्काइव के अंदर मौजूद फ़ाइल नामों की सूची बनाता है।
  • 🤖 एआई सहायता: कोपायलट जैसे एआई टूल तुरंत ज़िप और अनज़िप कोड जनरेट करते हैं।

Python ज़िप फ़ाइल

Python आपको शीघ्रता से ज़िप/टार अभिलेखागार बनाने की अनुमति देता है।

निम्न आदेश संपूर्ण निर्देशिका को ज़िप कर देगा

shutil.make_archive(output_filename, 'zip', dir_name)

निम्न आदेश आपको उन फ़ाइलों पर नियंत्रण देता है जिन्हें आप संग्रहित करना चाहते हैं

ZipFile.write(filename)

किसी पूरी डायरेक्टरी को ज़िप कैसे करें Python

यहाँ ज़िप फ़ाइल बनाने के चरण दिए गए हैं Python

चरण 1) से एक संग्रह फ़ाइल बनाने के लिए Python, सुनिश्चित करें कि आपका आयात विवरण सही और क्रम में है। यहाँ संग्रह के लिए आयात विवरण है from shutil import make_archive

Python ज़िप फ़ाइल

Code व्याख्या

  • मॉड्यूल Shutil से make_archive क्लास आयात करें
  • निर्देशिका और फ़ाइल नाम को पथ से पाठ फ़ाइल के स्थान तक विभाजित करने के लिए विभाजन फ़ंक्शन का उपयोग करें (guru99)
  • फिर हम आर्काइव फ़ाइल बनाने के लिए मॉड्यूल “shutil.make_archive(“guru99 archive, “zip”, root_dir)” को कॉल करते हैं, जो ज़िप प्रारूप में होगी
  • उसके बाद हम उन चीज़ों की रूट डायरेक्टरी पास करते हैं जिन्हें हम ज़िप करना चाहते हैं। तो डायरेक्टरी में सब कुछ ज़िप हो जाएगा
  • जब आप कोड चलाते हैं, तो आप देख सकते हैं कि पैनल के दाईं ओर आर्काइव ज़िप फ़ाइल बनाई गई है।

चरण 2) एक बार आपकी आर्काइव फ़ाइल बन जाने के बाद, आप फ़ाइल पर राइट-क्लिक कर सकते हैं और ओएस का चयन कर सकते हैं, और यह आपकी आर्काइव फ़ाइलों को दिखाएगा जैसा कि नीचे दिखाया गया है

Python ज़िप फ़ाइल

अब आपकी archive.zip फ़ाइल आपके OS पर दिखाई देगी (Windows एक्सप्लोरर)

Python ज़िप फ़ाइल

चरण 3) जब आप फ़ाइल पर डबल-क्लिक करेंगे, तो आपको वहां मौजूद सभी फ़ाइलों की सूची दिखाई देगी।

Python ज़िप फ़ाइल

ZipFile का उपयोग करके विशिष्ट फ़ाइलों को ज़िप कैसे करें

चरण 4) In Python हम आर्काइव पर अधिक नियंत्रण रख सकते हैं क्योंकि हम परिभाषित कर सकते हैं कि आर्काइव के अंतर्गत कौन सी विशिष्ट फ़ाइल शामिल करनी है। हमारे मामले में, हम आर्काइव के अंतर्गत दो फ़ाइलें शामिल करेंगे “गुरु99.txt” और “गुरु99.txt.bak”.

Python ज़िप फ़ाइल

Code व्याख्या

  • ज़िप फ़ाइल से ज़िपफ़ाइल क्लास आयात करें Python मॉड्यूल। यह मॉड्यूल ज़िप फ़ाइलें बनाने पर पूर्ण नियंत्रण देता है
  • हम नाम ( “testguru99.zip, “w”) के साथ एक नया ज़िपफ़ाइल बनाते हैं
  • एक नया ज़िपफ़ाइल क्लास बनाने के लिए, अनुमति पास करने की आवश्यकता होती है क्योंकि यह एक फ़ाइल है, इसलिए आपको फ़ाइल में newzip के रूप में जानकारी लिखनी होगी
  • हमने जो ज़िप फ़ाइल बनाई है, उसे संदर्भित करने के लिए हमने वेरिएबल “newzip” का उपयोग किया है
  • “newzip” वेरिएबल पर write फ़ंक्शन का उपयोग करके, हम “guru99.txt” और “guru99.txt.bak” फ़ाइलों को संग्रह में जोड़ते हैं

जब आप कोड निष्पादित करते हैं तो आप देख सकते हैं कि फ़ाइल पैनल के दाईं ओर "guru99.zip" नाम से बनाई गई है

नोटयहां हम फ़ाइल को “बंद” करने के लिए “newzip.close” जैसा कोई आदेश नहीं देते हैं क्योंकि हम “With” स्कोप लॉक का उपयोग करते हैं, इसलिए जब प्रोग्राम इस दायरे से बाहर हो जाता है तो फ़ाइल साफ़ हो जाएगी और स्वचालित रूप से बंद हो जाएगी।

चरण 5) आप जब -> फ़ाइल (testguru99.zip) पर राइट क्लिक करें और -> अपना ओएस चुनें (Windows एक्सप्लोरर), यह फ़ोल्डर में संग्रहीत फ़ाइलों को दिखाएगा जैसा कि नीचे दिखाया गया है।

Python ज़िप फ़ाइल

जब आप “testguru99.zip” फ़ाइल पर डबल क्लिक करेंगे तो एक अन्य विंडो खुलेगी और इसमें शामिल फ़ाइलें दिखाई देंगी।

Python ज़िप फ़ाइल

पूर्ण Python Code ज़िप फ़ाइल बनाने के लिए

यहाँ पूरा कोड है

Python 2 उदाहरण

import os
import shutil
from zipfile import ZipFile
from os import path
from shutil import make_archive

def main():
# Check if file exists
	if path.exists("guru99.txt"):
# get the path to the file in the current directory
	src = path.realpath("guru99.txt");
# rename the original file
	os.rename("career.guru99.txt","guru99.txt")
# now put things into a ZIP archive
	root_dir,tail = path.split(src)
    shutil.make_archive("guru99 archive", "zip", root_dir)
# more fine-grained control over ZIP files
	with ZipFile("testguru99.zip","w") as newzip:
	newzip.write("guru99.txt")
	    newzip.write("guru99.txt.bak")
if __name__== "__main__":
	  main()

Python 3 उदाहरण

import os
import shutil
from zipfile import ZipFile
from os import path
from shutil import make_archive

    # Check if file exists
       if path.exists("guru99.txt"):
    # get the path to the file in the current directory
        src = path.realpath("guru99.txt");
    # rename the original file
        os.rename("career.guru99.txt","guru99.txt")
    # now put things into a ZIP archive
        root_dir,tail = path.split(src)
        shutil.make_archive("guru99 archive","zip",root_dir)
    # more fine-grained control over ZIP files
        with ZipFile("testguru99.zip", "w") as newzip:
            newzip.write("guru99.txt")
            newzip.write("guru99.txt.bak")

कैसे बाहर निकलेंtracज़िप फ़ाइल को अनज़िप करें Python

किसी आर्काइव फ़ाइल को अनज़िप करने के लिए, उसे ZipFile के साथ रीड मोड में खोलें और ex कमांड चलाएँ।tractall() से extracप्रत्येक फ़ाइल, या पूर्वtract() का उपयोग करके एक सदस्य को बाहर निकालें।

from zipfile import ZipFile

with ZipFile("testguru99.zip", "r") as myzip:
    myzip.extractall("extracted_files")

भूतपूर्वtractall() विधि सभी संग्रहित फ़ाइलों को उस फ़ोल्डर में लिखती है जिसे आप तर्क के रूप में पास करते हैं।

ज़िप फ़ाइल में फ़ाइलों की सूची कैसे बनाएं Archive

आप बिना पूर्व अनुमति के किसी संग्रह का निरीक्षण कर सकते हैंtracnamelist() विधि ज़िप फ़ाइल के अंदर संग्रहीत प्रत्येक फ़ाइल के नाम लौटाती है।

from zipfile import ZipFile

with ZipFile("testguru99.zip", "r") as myzip:
    print(myzip.namelist())

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

ज़िप फ़ाइल के अंदर किसी फ़ाइल को कैसे पढ़ें Archive

आप बिना अनज़िप किए सीधे आर्काइव से मेंबर फ़ाइल पढ़ सकते हैं।ping इसे ZipFile के open() मेथड का उपयोग करके डिस्क पर सेव करें।

from zipfile import ZipFile

with ZipFile("testguru99.zip", "r") as myzip:
    with myzip.open("guru99.txt") as f:
        print(f.read())

यह तब उपयोगी होता है जब आपको किसी बड़े संग्रह से केवल एक फ़ाइल की सामग्री की आवश्यकता होती है।

अक्सर पूछे जाने वाले प्रश्न

किसी डायरेक्टरी को ज़िप करने के लिए shutil.make_archive(name, 'zip', root_dir) का उपयोग करें, या किसी ज़िप फ़ाइल को राइट मोड में खोलें और आर्काइव में विशिष्ट फ़ाइलें जोड़ने के लिए write() को कॉल करें।

shutil.make_archive() एक ही कॉल में पूरी डायरेक्टरी को ज़िप कर देता है, जबकि zipfile.ZipFile अधिक नियंत्रण प्रदान करता है, जिससे आप फ़ाइलें जोड़ सकते हैं, पढ़ सकते हैं या हटा सकते हैं।tracसंग्रह के भीतर अलग-अलग फ़ाइलें।

ZipFile('file.zip', 'r') कमांड का उपयोग करके आर्काइव खोलें और ex को कॉल करें।tractall('folder') to extracसब कुछ, या पूर्वtracसंग्रह से एक फ़ाइल निकालने के लिए t('name') का उपयोग करें।

ज़िप फ़ाइल को रीड मोड में खोलें और namelist() फ़ंक्शन को कॉल करें, जो आर्काइव में संग्रहीत सभी फ़ाइल नामों की एक सूची लौटाता है।tracउनमें से किसी को भी।

'with' स्टेटमेंट ब्लॉक समाप्त होने पर आर्काइव को स्वचालित रूप से बंद कर देता है, भले ही कोई त्रुटि हो जाए, इसलिए आपको मैन्युअल रूप से close() को कॉल करने की आवश्यकता नहीं है।

GitHub Copilot जैसे AI सहायक ZipFile और make_archive() कॉल को स्वतः पूर्ण करते हैं, और ऐसे लूप उत्पन्न करते हैं जो एक सरल भाषा के विवरण से कई फाइलों को ज़िप या अनज़िप करते हैं।

जी हां। एआई-संचालित उपकरण बैकअप और संग्रह स्क्रिप्ट लिखने को स्वचालित कर सकते हैं, शटिल और ज़िपफ़ाइल के बीच चयन कर सकते हैं, और गुम फाइलों या दूषित संग्रहों के लिए त्रुटि प्रबंधन जोड़ सकते हैं।

हाँ। ज़िप फ़ाइल खोलें, फिर उसके open() मेथड का उपयोग करके किसी सदस्य फ़ाइल पर उसकी सामग्री को सीधे पढ़ें, बिना किसी अतिरिक्त प्रयास के।tracपूरे संग्रह को डिस्क पर स्थानांतरित करना।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: