पायथन में JSON डेटा के साथ कार्य करना

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

JSON क्या है?

JSON एक टेक्स्ट-आधारित प्रारूप है जिसे पढ़ना और लिखना मनुष्यों और मशीनों दोनों के लिए आसान है। इसमें पायथन शब्दकोशों के समान कुंजी-मूल्य जोड़े होते हैं। एक सामान्य JSON ऑब्जेक्ट इस तरह दिखता है:

{
    "name": "Alice",
    "age": 30,
    "city": "New York",
    "is_student": false,
    "skills": ["Python", "JavaScript", "SQL"]
}

JSON मॉड्यूल आयात करना

json मॉड्यूल पायथन की मानक लाइब्रेरी में शामिल है, इसलिए आपको कुछ भी इंस्टॉल करने की आवश्यकता नहीं है। बस इसे अपनी स्क्रिप्ट की शुरुआत में आयात करें:

import json

JSON डेटा पढ़ना

आप JSON डेटा को स्ट्रिंग या फ़ाइल से पढ़ सकते हैं। json.loads() विधि का उपयोग स्ट्रिंग से JSON डेटा पार्स करने के लिए किया जाता है, जबकि json.load() का उपयोग फ़ाइल से JSON डेटा पढ़ने के लिए किया जाता है।

स्ट्रिंग से JSON पढ़ना

किसी स्ट्रिंग से JSON पढ़ने के लिए, json.loads() विधि का उपयोग करें, जो JSON स्ट्रिंग को पायथन डिक्शनरी में परिवर्तित करती है।

# Example of reading JSON from a string
json_string = '{"name": "Alice", "age": 30, "city": "New York"}'
data = json.loads(json_string)

print(data)
print(data['name'])  # Output: Alice

किसी फ़ाइल से JSON पढ़ना

किसी फ़ाइल से JSON डेटा पढ़ने के लिए, json.load() विधि का उपयोग करें। यह विधि फ़ाइल की सामग्री को पढ़ती है और उसे पायथन डिक्शनरी में परिवर्तित करती है।

# Example of reading JSON from a file
with open('data.json', 'r') as file:
    data = json.load(file)

print(data)

JSON डेटा लिखना

आप JSON डेटा को स्ट्रिंग या फ़ाइल में लिख सकते हैं। json.dumps() विधि का उपयोग पायथन ऑब्जेक्ट को JSON स्ट्रिंग में बदलने के लिए किया जाता है, जबकि json.dump() का उपयोग JSON डेटा को फ़ाइल में लिखने के लिए किया जाता है।

JSON को स्ट्रिंग में लिखना

JSON को स्ट्रिंग में लिखने के लिए, json.dumps() विधि का उपयोग करें, जो पायथन शब्दकोश को JSON स्ट्रिंग में परिवर्तित करता है।

# Example of writing JSON to a string
data = {
    "name": "Bob",
    "age": 25,
    "city": "Los Angeles"
}

json_string = json.dumps(data)
print(json_string)

JSON को फ़ाइल में लिखना

JSON डेटा को फ़ाइल में लिखने के लिए, json.dump() विधि का उपयोग करें। यह विधि एक पायथन ऑब्जेक्ट लेती है और इसे JSON प्रारूप में फ़ाइल में लिखती है।

# Example of writing JSON to a file
data = {
    "name": "Bob",
    "age": 25,
    "city": "Los Angeles"
}

with open('output.json', 'w') as file:
    json.dump(data, file)

JSON डेटा का सुंदर मुद्रण

json.dumps() विधि में कई पैरामीटर हैं जो आपको बेहतर पठनीयता के लिए JSON डेटा को फ़ॉर्मेट करने की अनुमति देते हैं। indent पैरामीटर इंडेंटेशन के लिए उपयोग किए जाने वाले स्पेस की संख्या निर्दिष्ट करता है, जबकि sort_keys ​​पैरामीटर आउटपुट में कुंजियों को सॉर्ट करता है।

# Example of pretty-printing JSON data
data = {
    "name": "Charlie",
    "age": 35,
    "city": "Chicago"
}

json_string = json.dumps(data, indent=4, sort_keys=True)
print(json_string)

JSON और पायथन डेटा प्रकारों के बीच रूपांतरण

पायथन का json मॉड्यूल विभिन्न डेटा प्रकारों को संभाल सकता है और उन्हें JSON और पायथन के बीच परिवर्तित कर सकता है। यहाँ एक त्वरित संदर्भ दिया गया है:

  • dict (पायथन) से object (JSON)
  • list (पायथन) से array (JSON)
  • str (पायथन) से string (JSON)
  • int, float (पायथन) से number (JSON)
  • True, False (पायथन) से true, false (JSON)
  • None (पायथन) से null (JSON)

JSON त्रुटियों को संभालना

JSON के साथ काम करते समय, गलत फ़ॉर्मेटिंग या अप्रत्याशित डेटा के कारण त्रुटियाँ हो सकती हैं। json मॉड्यूल ऐसी समस्याओं का सामना करने पर JSONDecodeError जैसे अपवाद उठाता है। इन त्रुटियों को सुचारू रूप से संभालने के लिए try और except ब्लॉक का उपयोग करें।

# Handling JSON errors
json_string = '{"name": "Alice", "age": 30, "city": "New York"'  # Missing closing brace

try:
    data = json.loads(json_string)
except json.JSONDecodeError as e:
    print(f"Error decoding JSON: {e}")

निष्कर्ष

JSON डेटा के साथ काम करना पायथन डेवलपर्स के लिए एक बुनियादी कौशल है, खासकर वेब डेवलपमेंट और डेटा साइंस में। json मॉड्यूल JSON डेटा को पढ़ने, लिखने और हेरफेर करने के लिए उपयोग में आसान तरीके प्रदान करता है। इन तकनीकों में महारत हासिल करके, आप अपने पायथन अनुप्रयोगों में JSON डेटा को कुशलतापूर्वक संभाल सकते हैं।

लिंक
Python