पायथन में अचार शब्दकोश

Payathana Mem Acara Sabdakosa



अचार का उपयोग पायथन एंटिटी फ्रेमवर्क को पूर्व-संसाधित करने के लिए किया जा सकता है जो किसी वस्तु को मेमोरी से बाइट स्ट्रीम में परिवर्तित करने की प्रक्रिया है जिसे बाइनरी प्रारूप के रूप में डिस्क में सहेजा जा सकता है। इस प्रक्रिया को क्रमांकन के रूप में जाना जाता है। इसे पूरा करने के लिए अचार डंप () विधि का उपयोग करें। जब इस बाइनरी रिकॉर्ड को फिर से पायथन प्रोग्राम में लोड किया जाता है, तो इसे डी-सीरियलाइज़ किया जा सकता है और अचार लोड () विधि का उपयोग करके वापस पायथन ऑब्जेक्ट में परिवर्तित किया जा सकता है।

यह लेख आपको सिखाता है कि पायथन के अचार मॉड्यूल का उपयोग करके डेटा को कैसे संग्रहीत किया जाए, विशेष रूप से एक शब्दकोश। शुरू करने के लिए, हमें अचार मॉड्यूल खरीदना होगा। अचार डंप () तीन मापदंडों को स्वीकार करता है। पहला इनपुट डेटा को सहेजने के लिए निर्दिष्ट करता है। दूसरा पैरामीटर फ़ाइल ऑब्जेक्ट है जो फ़ाइल को राइट-बाइनरी (wb) मोड में खोले जाने पर लौटाया जाता है। की-वैल्यू तर्क तीसरा पैरामीटर है। प्रोटोकॉल इस पैरामीटर द्वारा परिभाषित किया गया है। अचार को दो प्रकारों में वर्गीकृत किया जाता है: उच्चतम प्रोटोकॉल और अचार डिफ़ॉल्ट प्रोटोकॉल। डेटा को पुनः प्राप्त करने या डिस्क्रिअलाइज़ करने के लिए, अचार लोड () विधि का उपयोग किया जाता है, जिसके माध्यम से फ़ाइल ऑब्जेक्ट को रीड-बाइनरी (आरबी) मोड में फ़ाइल खोलकर प्राप्त किया जाता है।







उदाहरण 1: अचार डंप और लोड फ़ंक्शन का उपयोग करके अचार फ़ाइल में डेटा का क्रमांकन और डीसेरलाइज़ेशन

इस उदाहरण में, हम सीखेंगे कि एक बहुत ही सरल कोड के साथ एक शब्दकोश के रूप में डेटा को कैसे क्रमांकित और अक्रमबद्ध किया जाए।




पिछले चित्रण में प्रस्तुत कोड में, पायथन पुस्तकालय से पहला अचार मॉड्यूल आयात किया गया है ताकि इसके तरीकों का उपयोग किया जा सके। फिर, 2 कुंजियों और मानों के साथ डेटा का एक शब्दकोश प्रारंभ किया जाता है और 'आकृति' नामक चर में संग्रहीत किया जाता है। अगली पंक्ति में, अचार डंप () विधि का उपयोग राइट-बाइनरी (wb) मोड में 'info.p' नाम से एक नई फ़ाइल खोलने के लिए किया जाता है और इस फ़ाइल में 'आकृति' डेटा संग्रहीत किया जाता है। अगली पंक्ति में, अचार लोड () विधि उसी फ़ाइल के लिए नियोजित है जिसमें हमने डेटा को आरबी मोड में डंप किया था। यह हमारा शब्दकोश डेटा लौटाता है और 'ए' नाम के चर में संग्रहीत होता है। अंत में, यह लौटाया गया ऑब्जेक्ट आउटपुट टर्मिनल पर प्रिंट कमांड का उपयोग करके प्रदर्शित किया जाता है जैसा कि निम्न स्क्रीनशॉट में दिखाया गया है।



हम देख सकते हैं कि डंप विधि का उपयोग करके डेटा को पहले 'info.p' फ़ाइल में संग्रहीत किया गया था। फिर, जब हमने लोड () विधि को उसी फ़ाइल में नियोजित किया, तो हमें अपना डेटा वापस मिल गया।





उदाहरण 2: पायथन में डेटा को क्रमबद्ध करने के लिए एक अतिरिक्त प्रोटोकॉल के साथ अचार डंप फ़ंक्शन का उपयोग करना

यह एक समान उदाहरण है जिसमें हम अचार के एक अतिरिक्त प्रोटोकॉल, 'HIGHEST_PROTOCOL' का उपयोग करते हैं, जो कि नवीनतम प्रोटोकॉल है। यह प्रोटोकॉल नई भाषा सुविधाओं की अनुमति देता है जिनका हम उपयोग कर सकते हैं और अनुकूलन शामिल कर सकते हैं।




पिछले चित्रण में दिए गए कोड में, पहला अचार मॉड्यूल आयात किया गया है। फिर, कुंजी और मान के साथ एक आइटम का एक शब्दकोश प्रारंभ किया जाता है और चर 'ए' में संग्रहीत किया जाता है। अगली पंक्ति में, एक नई फ़ाइल जो 'info.p' है, wb मोड में एक हैंडल के रूप में खोली जाती है। अब, फ़ाइल 'हैंडल' नामक वस्तु में है। फिर, डंप () फ़ंक्शन को 'HIGHEST_PROTOCOL' का उपयोग करके 'ए' शब्दकोश के साथ 'हैंडल' करने के लिए नियोजित किया जाता है। यह डिक्शनरी को 'a' में कंप्यूटर की डिस्क पर 'info.p' फाइल में सेव करने की अनुमति देता है। फ़ाइल से जानकारी निकालने के लिए, फ़ाइल को पहले 'आरबी' मोड में खोला जाता है। फिर, इस फ़ाइल के लिए अचार लोड () विधि कार्यरत है। लौटाया गया डेटा विशेषता 'बी' में सहेजा गया है। अंत में, प्रिंट कमांड का उपयोग करते हुए, यह जानकारी आउटपुट नोड पर प्रदर्शित होती है, जैसा कि निम्नलिखित स्क्रीन कैप्चर में देखा गया है:

उदाहरण 3: अचार डंप और लोड फ़ंक्शन का उपयोग करके अचार फ़ाइल में डेटा की सूची का क्रमांकन और क्रमांकन

इस उदाहरण में, अचार मॉड्यूल पहले आयात किया जाता है। फिर, कुछ डेटा एक शब्दकोश में एक सूची प्रारूप में डाला जाता है और 'shape_colors' चर में संग्रहीत किया जाता है। अगली पंक्ति में, इस डेटा के साथ अचार डंप () विधि को सीधे नियोजित किया जाता है। इसके पैरामीटर में फ़ाइल के स्थान पर, 'info.p' फ़ाइल wb मोड में खोली जाती है। नतीजतन, डिक्शनरी डेटा अब इस फ़ाइल में डाल दिया गया है जो कंप्यूटर की डिस्क पर संग्रहीत है। फिर, फ़ाइल से डेटा पढ़ने के लिए, उसी फ़ाइल पर अचार लोड () विधि कार्यरत है। लौटाया गया डेटा चर 'ए' में सहेजा गया है। अंत में, प्रिंट कमांड का उपयोग करते हुए, यह जानकारी द्वितीयक टर्मिनलों पर प्रदर्शित की जाती है, जैसा कि निम्नलिखित स्नैपशॉट में दिखाया गया है:



उदाहरण 4: विभिन्न पैरामीटर्स के साथ पिकल डंप और लोड फंक्शन्स का उपयोग करके एक अचार फ़ाइल में जानकारी संग्रहीत करना

प्रदान किए गए कोड में, पहला अचार मॉड्यूल आयात किया जाता है। फिर, वेतन का एक शब्दकोश प्रारंभ किया जाता है और 'वेतन' चर में संग्रहीत किया जाता है। अगली पंक्ति में, एक हैंडल के रूप में wb मोड में एक नई फ़ाइल 'salary.p' खोली जाती है। अब, फ़ाइल 'हैंडल' नामक वस्तु में है। फिर, अचार डंप () फ़ंक्शन को 'HIGHEST_PROTOCOL' का उपयोग करके 'वेतन' शब्दकोश के साथ 'हैंडल' करने के लिए नियोजित किया जाता है। यह 'वेतन' में शब्दकोश को कंप्यूटर की डिस्क पर 'वेतन.पी' फ़ाइल में सहेजने की अनुमति देता है। अब, फ़ाइल से डेटा वापस प्राप्त करने के लिए, फ़ाइल को पहले 'आरबी' मोड में खोला जाता है। फिर, इस फ़ाइल के लिए अचार लोड () विधि कार्यरत है। रिवर्ट की गई जानकारी को वेरिएबल 'a' में सेव किया जाता है। अंततः, प्रिंट कमांड का उपयोग करके, यह डेटा आउटपुट सिरे पर प्रदर्शित होता है जैसा कि निम्नलिखित स्नैपशॉट में दिखाया गया है:



उदाहरण 5: अचार डंप और लोड फ़ंक्शन का उपयोग करके अचार फ़ाइल में एकाधिक आयामों में डेटा का क्रमांकन और डीसेरलाइज़ेशन

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


पिछले चित्रण में प्रदान किए गए कोड में, पहला अचार और पांडा मॉड्यूल आयात किए गए हैं। फिर, pd.DataFrame() विधि का उपयोग करके एक बहु-आयामी तालिका बनाई जाती है। रणनीति की अगली विशेषता चार सूचियों की एक सूची है। प्रत्येक सूची तालिका की एक पंक्ति से मेल खाती है। दूसरा पैरामीटर 'कॉलम' है जो तालिका के प्रत्येक कॉलम के शीर्षक को परिभाषित करता है। यह डेटाफ्रेम 'प्री' में संग्रहीत है। फिर, एक नई फ़ाइल जो 'उपस्थिति.p' है, wb मोड में खोली जाती है और इस फ़ाइल पर DataFrame के साथ अचार डंप () विधि को नियोजित किया जाता है। अब, हमारा निर्दिष्ट डेटा कंप्यूटर की हार्ड डिस्क पर 'उपस्थिति.पी' फ़ाइल में संग्रहीत है।


फ़ाइल से डेटा पुनर्प्राप्त करने के लिए, हम फ़ाइल को आरबी मोड में खोलते हैं जो फ़ाइल को पढ़ने की अनुमति देता है। फिर, अचार लोड () विधि 'उपस्थिति.पी' फ़ाइल में नियोजित है। अंत में, फ़ाइल में डेटा आउटपुट टर्मिनल पर प्रदर्शित होता है। जैसा कि हम देख सकते हैं, संपूर्ण डेटाफ़्रेम आउटपुट टर्मिनल पर प्रदर्शित होता है जो 'उपस्थिति.p' फ़ाइल में संग्रहीत होता है।

निष्कर्ष

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