पायथन में 'फॉर' लूप्स के साथ डिक्शनरी इटरेशन को समझना

पायथन में 'फॉर' लूप्स के साथ डिक्शनरी इटरेशन को समझना
पायथन में 'फॉर' लूप्स के साथ डिक्शनरी इटरेशन को समझना

पायथन शब्दकोशों के माध्यम से पुनरावृत्ति

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

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

आज्ञा विवरण
items() एक दृश्य ऑब्जेक्ट लौटाता है जो शब्दकोश के कुंजी-मूल्य टपल जोड़े की एक सूची प्रदर्शित करता है।
f-string स्ट्रिंग फ़ॉर्मेटिंग विधि जो घुंघराले ब्रेसिज़ {} का उपयोग करके स्ट्रिंग अक्षर के अंदर अभिव्यक्तियों को एम्बेड करने की अनुमति देती है।
keys() एक दृश्य ऑब्जेक्ट लौटाता है जो शब्दकोश में सभी कुंजियों की सूची प्रदर्शित करता है।
list() एक सूची ऑब्जेक्ट बनाता है. इस संदर्भ में, यह key() द्वारा लौटाए गए दृश्य ऑब्जेक्ट को एक सूची में परिवर्तित करता है।
range() संख्याओं का एक अनुक्रम उत्पन्न करता है, जिसका उपयोग आमतौर पर फॉर लूप्स में एक विशिष्ट संख्या में लूपिंग के लिए किया जाता है।
len() किसी ऑब्जेक्ट में आइटमों की संख्या लौटाता है। इस स्थिति में, यह शब्दकोश में कुंजियों की संख्या लौटाता है।
def Python में एक फ़ंक्शन को परिभाषित करता है।

शब्दकोश पुनरावृत्ति तकनीकों को समझना

प्रदान की गई स्क्रिप्ट पायथन में शब्दकोशों को दोहराने के लिए विभिन्न तरीकों को दर्शाती है। पहली स्क्रिप्ट एक सरल का उपयोग करती है for शब्दकोश के माध्यम से पुनरावृत्त करने के लिए लूप d. प्रत्येक पुनरावृत्ति के लिए, चर key शब्दकोश में किसी एक कुंजी का मान लेता है, और संबंधित मान का उपयोग करके पहुँचा जाता है d[key]. यह विधि सीधी है और अक्सर बुनियादी कुंजी-मूल्य पुनर्प्राप्ति के लिए उपयोग की जाती है। दूसरी स्क्रिप्ट का उपयोग करता है items() विधि, जो एक दृश्य ऑब्जेक्ट लौटाती है जो शब्दकोश के कुंजी-मूल्य टपल जोड़े की एक सूची प्रदर्शित करती है। का उपयोग करके for key, value in d.items(), स्क्रिप्ट एक ही पुनरावृत्ति में कुंजी और मान दोनों तक सीधे पहुंच सकती है, जो अधिक कुशल और पठनीय है।

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

'फॉर' लूप्स का उपयोग करके पायथन डिक्शनरी के माध्यम से पुनरावृत्ति

पायथन स्क्रिप्ट

d = {'x': 1, 'y': 2, 'z': 3}
for key in d:
    print(key, 'corresponds to', d[key])

पुनरावृत्ति के लिए आइटम विधि का उपयोग करना

पायथन स्क्रिप्ट

d = {'x': 1, 'y': 2, 'z': 3}
for key, value in d.items():
    print(f'{key} corresponds to {value}')

एक शब्दकोश में मुख्य पुनरावृत्ति को समझना

पायथन स्क्रिप्ट

d = {'x': 1, 'y': 2, 'z': 3}
keys = d.keys()
for key in keys:
    print(f'Key: {key} -> Value: {d[key]}')

शब्दकोश सामग्री मुद्रित करने के लिए एक फ़ंक्शन का उपयोग करना

पायथन स्क्रिप्ट

def print_dict(d):
    for key in d:
        print(f'{key} corresponds to {d[key]}')

d = {'x': 1, 'y': 2, 'z': 3}
print_dict(d)

सूचकांक के साथ शब्दकोश पर पुनरावृत्ति

पायथन स्क्रिप्ट

d = {'x': 1, 'y': 2, 'z': 3}
keys = list(d.keys())
for i in range(len(keys)):
    print(f'{keys[i]} corresponds to {d[keys[i]]}')

शब्दकोश पुनरावृत्ति में गहराई से गोता लगाना

पायथन में शब्दकोशों को दोहराने का एक और महत्वपूर्ण पहलू विभिन्न तरीकों और उनके उपयोग के मामलों को सरल से परे समझना है for लूप्स उदाहरण के लिए, dict.get() विधि विशेष रूप से तब उपयोगी हो सकती है जब आप कुंजी नहीं मिलने पर KeyError बढ़ाए बिना किसी शब्दकोश से मान पुनर्प्राप्त करना चाहते हैं। यदि शब्दकोश में कुंजी मौजूद नहीं है तो यह विधि आपको वापस लौटने के लिए एक डिफ़ॉल्ट मान निर्दिष्ट करने की अनुमति देती है। का उपयोग करते हुए dict.get(key, default), आप गुम कुंजियों को सुरक्षित रूप से संभाल सकते हैं, जो डेटा प्रोसेसिंग और अधूरे डेटासेट को संभालने में आवश्यक है।

इसके अतिरिक्त, शब्दकोश समझ पुनरावर्तनीय डेटा से शब्दकोश बनाने का एक संक्षिप्त तरीका प्रदान करती है। सूची समझ के समान, शब्दकोश समझ वाक्यविन्यास का उपयोग करती है {key: value for item in iterable}. यह विधि शब्दकोशों को कुशलतापूर्वक बदलने या फ़िल्टर करने के लिए फायदेमंद है। एक अन्य उन्नत तकनीक में शामिल है defaultdict से कक्षा collections मापांक। अंतर्निर्मित शब्दकोश का यह उपवर्ग आपको शब्दकोश के लिए एक डिफ़ॉल्ट प्रकार निर्दिष्ट करने की अनुमति देता है, जैसे int या list. जब ऐसी कुंजी तक पहुंच बनाई जाती है जो मौजूद नहीं है, defaultdict स्वचालित रूप से डिफ़ॉल्ट प्रकार के साथ एक प्रविष्टि बनाता है, जो कोडिंग पैटर्न को सरल बनाता है जिसके लिए शब्दकोश प्रविष्टियों के आरंभीकरण की आवश्यकता होती है।

पायथन डिक्शनरी इटरेशन के बारे में सामान्य प्रश्न

  1. इस्तेमाल करने से क्या फायदा है dict.get()?
  2. यह आपको KeyError बढ़ाए बिना गुम कुंजियों को संभालने और एक डिफ़ॉल्ट मान निर्दिष्ट करने की अनुमति देता है।
  3. शब्दकोश समझ कैसे काम करती है?
  4. वे वाक्यविन्यास का उपयोग करते हैं {key: value for item in iterable} संक्षिप्त तरीके से शब्दकोश बनाना।
  5. क्या है एक defaultdict?
  6. अंतर्निर्मित शब्दकोश का एक उपवर्ग जो अस्तित्वहीन कुंजियों के लिए एक डिफ़ॉल्ट मान प्रदान करता है।
  7. आपको कब उपयोग करना चाहिए dict.items()?
  8. इसका उपयोग तब करें जब आपको लूप में दोनों कुंजियों और मानों तक एक साथ पहुंचने की आवश्यकता हो।
  9. आप शब्दकोश की कुंजियों को सूची में कैसे परिवर्तित कर सकते हैं?
  10. का उपयोग करके list(dict.keys()) तरीका।
  11. क्या करता है len() शब्दकोशों के संदर्भ में करें?
  12. यह शब्दकोश में कुंजी-मूल्य जोड़े की संख्या लौटाता है।
  13. आप शब्दकोश सामग्री मुद्रित करने के लिए किसी फ़ंक्शन का उपयोग क्यों कर सकते हैं?
  14. तर्क को समाहित करना और कोड को अधिक पुन: प्रयोज्य और व्यवस्थित बनाना।
  15. कैसे हुआ f-string शब्दकोश सामग्री मुद्रित करने में सहायता?
  16. यह अधिक पठनीय आउटपुट के लिए स्ट्रिंग अक्षर के अंदर अभिव्यक्तियों को एम्बेड करने की अनुमति देता है।
  17. का उद्देश्य क्या है for key in dict वाक्य - विन्यास?
  18. यह डिफ़ॉल्ट रूप से शब्दकोश की कुंजियों पर पुनरावृत्ति करता है।

शब्दकोश पुनरावृत्ति का समापन

शब्दकोशों पर पुनरावृत्ति करने में पायथन का लचीलापन इसे डेटा हेरफेर के लिए एक शक्तिशाली भाषा बनाता है। सरल फॉर लूप्स, dict.items(), और defaultdict का उपयोग करके, डेवलपर्स शब्दकोश कुंजियों और मूल्यों तक कुशलतापूर्वक पहुंच और प्रबंधन कर सकते हैं। इन विधियों और उनके उचित उपयोग के मामलों को समझना अधिक पठनीय और कुशल कोड सुनिश्चित करता है, जिससे पायथन में समग्र प्रोग्रामिंग दक्षता में वृद्धि होती है।