JSON (जावा स्क्रिप्ट ऑब्जेक्ट नोटेशन) हल्का वजन, अच्छी तरह से स्वीकृत डेटा इंटरचेंज प्रारूप है। पायथन में JSON फ़ॉर्मेटिंग तकनीकों का उपयोग करके, हम JSON स्ट्रिंग्स को Python ऑब्जेक्ट्स में कनवर्ट कर सकते हैं, और Python ऑब्जेक्ट्स को JSON स्ट्रिंग्स में भी कनवर्ट कर सकते हैं।
इन कार्यात्मकताओं का उपयोग करने के लिए, हमें पायथन के जोंस मॉड्यूल का उपयोग करने की आवश्यकता है। जेसन मॉड्यूल पायथन मानक पुस्तकालय के साथ आता है। तो सबसे पहले हमें इसे पहले आयात करना होगा।
आयात जेसन
पायथन ऑब्जेक्ट को JSON स्ट्रिंग में कनवर्ट करना
json मॉड्यूल में, Python ऑब्जेक्ट्स को JSON स्ट्रिंग्स में बदलने के लिए डंप (), और डंप () जैसी कुछ विधियाँ हैं। डंप () विधि में दो तर्क होते हैं, पहला ऑब्जेक्ट होता है, और दूसरा फ़ाइल ऑब्जेक्ट होता है। यह विधि ऑब्जेक्ट को JSON स्वरूपित स्ट्रीम . के रूप में क्रमबद्ध करती है वस्तुओं को फाइल करने के लिए। इसी तरह डंप () विधि केवल एक तर्क लेती है। तर्क वस्तु है। यह ऑब्जेक्ट को JSON स्ट्रिंग . में कनवर्ट करता है ।
उदाहरण कोड
आयात jsonfrom io आयात StringIOstr_io_obj =StringIO()# StringIOjson.dump(["India", "Australia", "Brazil"], str_io_obj) print('StringIO Object value:' + str(str_io_obj) बनाने के लिए JSON डंप का उपयोग करें .getvalue ())) my_json ={ "नाम" :"कल्याण", "आयु" :25, "शहर" :'दिल्ली'}प्रिंट (json.dumps(my_json, indent=4))
आउटपुट
StringIO ऑब्जेक्ट मान:["भारत", "ऑस्ट्रेलिया", "ब्राज़ील"] { "नाम":"कल्याण", "आयु":25, "शहर":"दिल्ली"}
JSON Strings को Python Objects में कनवर्ट करना
इस मामले में हम JSON स्ट्रिंग्स को डी-सीरियलाइज़ कर रहे हैं। दो अलग-अलग तरीके हैं। ये लोड () और लोड () हैं। ये दोनों विधियाँ JSON फ़ाइल को तर्क के रूप में लेती हैं। लोड () फ़ाइल ऑब्जेक्ट डेटा से पायथन ऑब्जेक्ट में कनवर्ट करता है, और लोड () स्ट्रिंग प्रकार डेटा से कनवर्ट करता है।
उदाहरण कोड
आयात jsonfrom io आयात StringIOstr_io_obj =StringIO('["xyz", "abc", "xyz", "pqr"]')#load from StringIOprint('Load:' + str(json.load(str_io_obj)) )प्रिंट ('स्ट्रिंग टू जेसन:' + str(json.loads('{"xyz" :1, "abc" :2, "xyz" :3, "pqr" :4}')))
आउटपुट
लोड:['xyz', 'abc', 'xyz', 'pqr']String to Json:{'xyz':3, 'abc':2, 'pqr':4}
पायथन में JSON एनकोडर और डिकोडर क्लासेस
JSONEncoder क्लास का उपयोग पायथन ऑब्जेक्ट्स को JSON फॉर्मेट में बदलने के लिए किया जाता है। यहाँ इस उदाहरण में हम देखेंगे कि कैसे एक जटिल संख्या वस्तु को JSONEncoder का उपयोग करके JSON प्रकार की वस्तु के रूप में परिवर्तित किया जा सकता है।
उदाहरण कोड
आयात करें (json.dumps(5+8j, cls=Comp_Encoder))आउटपुट
[5.0, 8.0]
JSONDecoder वर्ग विपरीत क्रिया करता है।
उदाहरण कोड
आयात करें .JSONDecoder().raw_decode(my_str))आउटपुट
{'आसिम':'28', 'प्रियेश':23}({'आसिम':'28', 'प्रियेश':23}, 44)