पाइथन शब्दकोश (Python Dictionaries)

पाइथन शब्दकोश (Python Dictionaries)

इस अध्याय में, हम पाइथन में शब्दकोश (Dictionaries) के उपयोग को समझेंगे। शब्दकोश पाइथन में एक महत्वपूर्ण डेटा संरचना है, जो कुंजी-मूल्य जोड़े (key-value pairs) के रूप में डेटा को संग्रहीत करती है। शब्दकोशों का उपयोग तब किया जाता है जब डेटा को किसी विशेष कुंजी के माध्यम से एक्सेस करने की आवश्यकता होती है। इस अध्याय में, हम शब्दकोश का निर्माण, तत्वों तक पहुंच, तत्वों में जोड़ने और बदलने, शब्दकोश से तत्व निकालने, शब्दकोश विधियों का उपयोग, और शब्दकोश के उपयोग के बारे में विस्तार से जानेंगे।

शब्दकोश क्या है? (What is a Dictionary?)

शब्दकोश (Dictionary) पाइथन में एक डेटा संरचना है जो कुंजी-मूल्य जोड़े (key-value pairs) के रूप में डेटा को संग्रहीत करती है। प्रत्येक कुंजी अद्वितीय होती है और इसे एक मान के साथ जोड़ा जाता है। शब्दकोशों में कुंजी और मूल्य किसी भी प्रकार के हो सकते हैं, जैसे कि स्ट्रिंग, संख्या, या यहां तक कि अन्य शब्दकोश।

उदाहरण (Example)

my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
print(my_dict)

आउटपुट:

{'name': 'राम', 'age': 25, 'city': 'अयोध्या'}

शब्दकोश का निर्माण (Creating Dictionaries)

शब्दकोश का निर्माण विभिन्न तरीकों से किया जा सकता है। आप सीधे आकृति कोष्ठकों ({}) का उपयोग करके या dict() फ़ंक्शन का उपयोग करके शब्दकोश बना सकते हैं।

उदाहरण (Examples)

  1. सरल शब्दकोश (Simple Dictionary)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    

     

  2. dict() फ़ंक्शन का उपयोग करके शब्दकोश (Creating Dictionary Using dict() Function)
    my_dict = dict(name="राम", age=25, city="अयोध्या")
    

     

  3. खाली शब्दकोश (Empty Dictionary)
    my_dict = {}
    

     

शब्दकोश के तत्वों तक पहुंच (Accessing Elements in a Dictionary)

आप शब्दकोश के तत्वों तक उनकी कुंजी का उपयोग करके पहुंच सकते हैं।

उदाहरण (Example)

my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
print(my_dict["name"])  # आउटपुट: राम
print(my_dict["age"])   # आउटपुट: 25

शब्दकोश में तत्व जोड़ना और बदलना (Adding and Modifying Elements in a Dictionary)

आप शब्दकोश में नए तत्व जोड़ सकते हैं या मौजूदा तत्वों को उनकी कुंजी का उपयोग करके बदल सकते हैं।

उदाहरण (Example)

my_dict = {"name": "राम", "age": 25}
my_dict["city"] = "अयोध्या"  # तत्व जोड़ना
my_dict["age"] = 26          # तत्व बदलना
print(my_dict)  # आउटपुट: {'name': 'राम', 'age': 26, 'city': 'अयोध्या'}

शब्दकोश में तत्व जोड़ना और बदलना (Adding and Modifying Elements in a Dictionary)

आप शब्दकोश में नए तत्व जोड़ सकते हैं या मौजूदा तत्वों को उनकी कुंजी का उपयोग करके बदल सकते हैं।

उदाहरण (Example)

my_dict = {"name": "राम", "age": 25}
my_dict["city"] = "अयोध्या"  # तत्व जोड़ना
my_dict["age"] = 26          # तत्व बदलना
print(my_dict)  # आउटपुट: {'name': 'राम', 'age': 26, 'city': 'अयोध्या'}

शब्दकोश से तत्व निकालना (Removing Elements from a Dictionary)

आप शब्दकोश से तत्व निकालने के लिए del कीवर्ड, pop() विधि, या popitem() विधि का उपयोग कर सकते हैं।

उदाहरण (Examples)

  1. del कीवर्ड का उपयोग करके (Using del Keyword)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    del my_dict["age"]
    print(my_dict)  # आउटपुट: {'name': 'राम', 'city': 'अयोध्या'}
    

     

  2. pop() विधि का उपयोग करके (Using pop() Method)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    age = my_dict.pop("age")
    print(age)      # आउटपुट: 25
    print(my_dict)  # आउटपुट: {'name': 'राम', 'city': 'अयोध्या'}
    

     

  3. popitem() विधि का उपयोग करके (Using popitem() Method)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    item = my_dict.popitem()
    print(item)     # आउटपुट: ('city', 'अयोध्या')
    print(my_dict)  # आउटपुट: {'name': 'राम', 'age': 25}
    

     

शब्दकोश के साथ लूप्स (Loops with Dictionaries)

आप लूप्स का उपयोग करके शब्दकोश के तत्वों को इटरेट कर सकते हैं। आप keys(), values(), और items() विधियों का उपयोग कर सकते हैं।

उदाहरण (Examples)

  1. कुंजियों पर लूप (Looping over Keys)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    for key in my_dict:
        print(key)
    

     

  2. मूल्यों पर लूप (Looping over Values)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    for value in my_dict.values():
        print(value)
    

     

  3. कुंजी-मूल्य जोड़ों पर लूप (Looping over Key-Value Pairs)
    my_dict = {"name": "राम", "age": 25, "city": "अयोध्या"}
    for key, value in my_dict.items():
        print(f"{key}: {value}")
    

     

शब्दकोश विधियाँ (Dictionary Methods)

शब्दकोशों के साथ काम करने के लिए पाइथन में कई बिल्ट-इन विधियाँ होती हैं।

उदाहरण (Examples)

  1. get() विधि (get() Method)
    my_dict = {"name": "राम", "age": 25}
    print(my_dict.get("name"))  # आउटपुट: राम
    print(my_dict.get("city", "नहीं मिला"))  # आउटपुट: नहीं मिला
    

     

  2. keys() विधि (keys() Method)
    my_dict = {"name": "राम", "age": 25}
    print(my_dict.keys())  # आउटपुट: dict_keys(['name', 'age'])
    

     

  3. values() विधि (values() Method)
    my_dict = {"name": "राम", "age": 25}
    print(my_dict.values())  # आउटपुट: dict_values(['राम', 25])
    

     

  4. items() विधि (items() Method)
    my_dict = {"name": "राम", "age": 25}
    print(my_dict.items())  # आउटपुट: dict_items([('name', 'राम'), ('age', 25)])
    

     

नेस्टेड शब्दकोश (Nested Dictionaries)

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

उदाहरण (Example)

nested_dict = {
    "person1": {"name": "राम", "age": 25},
    "person2": {"name": "सीता", "age": 23}
}
print(nested_dict)

आउटपुट:

{
    'person1': {'name': 'राम', 'age': 25},
    'person2': {'name': 'सीता', 'age': 23}
}

शब्दकोश की प्रतिलिपि बनाना (Copying Dictionaries)

शब्दकोश की प्रतिलिपि बनाने के कई तरीके होते हैं। आप copy() विधि या dict() फ़ंक्शन का उपयोग कर सकते हैं।

उदाहरण (Examples)

  1. copy() विधि का उपयोग करके (Using copy() Method)
    my_dict = {"name": "राम", "age": 25}
    copied_dict = my_dict.copy()
    print(copied_dict)  # आउटपुट: {'name': 'राम', 'age': 25}
    

     

  2. dict() फ़ंक्शन का उपयोग करके (Using dict() Function)
    my_dict = {"name": "राम", "age": 25}
    copied_dict = dict(my_dict)
    print(copied_dict)  # आउटपुट: {'name': 'राम', 'age': 25}
    

     

शब्दकोश का उपयोग (Uses of Dictionaries)

शब्दकोशों का उपयोग तब किया जाता है जब डेटा को कुंजी के माध्यम से जल्दी से एक्सेस करने की आवश्यकता होती है। यह विभिन्न स्थानों पर उपयोग किया जा सकता है, जैसे कि कॉन्फ़िगरेशन सेटिंग्स, डेटा मैनिपुलेशन, और बहुत कुछ।

उदाहरण (Examples)

  1. कॉन्फ़िगरेशन सेटिंग्स (Configuration Settings)
    config = {"debug": True, "db_host": "localhost", "db_port": 3306}
    

     

  2. डेटा मैनिपुलेशन (Data Manipulation)
    student_grades = {"राम": 85, "सीता": 92, "लक्ष्मण": 78}
    

     

शब्दकोश के उदाहरण (Examples with Dictionaries)

इस सेक्शन में, हम शब्दकोशों के कुछ उपयोगी उदाहरण देखेंगे जो विभिन्न समस्याओं का समाधान करेंगे।

  1. शब्दों की गिनती (Counting Words)
    text = "यह एक उदाहरण है यह एक परीक्षण है"
    word_count = {}
    for word in text.split():
        if word in word_count:
            word_count[word] += 1
        else:
            word_count[word] = 1
    print(word_count)
    

    आउटपुट:

    {'यह': 2, 'एक': 2, 'उदाहरण': 1, 'है': 2, 'परीक्षण': 1}
    

     

  2. प्रयोक्ता डेटा संग्रहीत करना (Storing User Data)
    users = {
        "user1": {"username": "ram123", "password": "ram@123"},
        "user2": {"username": "sita456", "password": "sita@456"}
    }
    print(users)
    

    आउटपुट:

    {
        'user1': {'username': 'ram123', 'password': 'ram@123'},
        'user2': {'username': 'sita456', 'password': 'sita@456'}
    }
    

     

शब्दकोश के लिए उपयोगी टिप्स (Useful Tips for Dictionaries)

  1. कुंजियों की जाँच करें (Check Keys): हमेशा यह सुनिश्चित करें कि आप किसी कुंजी का उपयोग करने से पहले यह जांच लें कि वह कुंजी शब्दकोश में मौजूद है या नहीं, ताकि KeyError से बचा जा सके।
  2. डॉक्स्ट्रिंग्स का उपयोग (Use Docstrings): जटिल शब्दकोश संरचनाओं के लिए डॉक्स्ट्रिंग्स का उपयोग करें ताकि उनके उपयोग को समझना आसान हो।
  3. डेटा सुरक्षा (Data Security): संवेदनशील डेटा को संग्रहीत करते समय हमेशा सुरक्षा का ध्यान रखें और आवश्यकतानुसार डेटा को एन्क्रिप्ट करें।
  4. शब्दकोश को संरचित रखें (Keep Dictionaries Structured): नेस्टेड शब्दकोशों का उपयोग करते समय उन्हें साफ और संगठित रखें ताकि उनका उपयोग और रखरखाव आसान हो।


Table of Contents

Index