Lookup Tables के रूप में Dictionaries
तेज़ access के लिए keys को values से map करें
Lookup Tables के रूप में Dictionaries, CoddyKit पर Competitive Programming Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Competitive Programming Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Competitive Programming Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
डिक्शनरी का विचार
एक dictionary कुंजियों को मानों से जोड़ती है, जिससे आप पूरी संरचना में खोजने के बजाय नाम के आधार पर संग्रहीत उत्तर प्राप्त कर सकते हैं। प्रतियोगिताओं में यह आपकी खोज-सारणी है। 🔑
स्थिर-समय अभिगम
सेट की तरह, डिक्शनरी भी कुंजी का hash बनाती है, इसलिए पढ़ना और लिखना लगभग O(1) होता है। इसी गति के कारण यह धीमी रैखिक खोजों का स्थान लेती है।
डिक्शनरी बनाना
braces के भीतर कुंजी और मान के जोड़े लिखिए, या केवल एक खाली जोड़ीदार कोष्ठक से शुरुआत कीजिए। प्रत्येक कुंजी ठीक एक मान की ओर संकेत करती है।
age = {'amy': 21, 'bob': 19}
empty = {}कुंजी से पढ़ना
कुंजी के चारों ओर square brackets लगाकर कोई मान प्राप्त कीजिए। कुंजी अनुक्रमांक की तरह काम करती है, लेकिन वह स्ट्रिंग, संख्या या टपल हो सकती है।
print(age['amy'])अनुपस्थित कुंजियाँ प्रोग्राम रोक देती हैं
कोष्ठकों से अनुपस्थित कुंजी पढ़ने पर KeyError उत्पन्न होता है। प्रतियोगिता में इससे तुरंत रनटाइम त्रुटि का निर्णय मिल सकता है।
get से सुरक्षित पठन
कुंजी अनुपस्थित होने पर प्रोग्राम रोकने के बजाय डिफ़ॉल्ट मान लौटाने के लिए get का उपयोग कीजिए। संभावित रूप से अनुपस्थित कुंजियों को पढ़ने का यह सुरक्षित तरीका है।
count = age.get('zoe', 0)डालना और अपडेट करना
किसी कुंजी को मान देने पर वह या तो जुड़ जाती है या पुराना मान बदल देती है। यही वाक्य-विन्यास डालने और अपडेट करने, दोनों के लिए काम करता है।
age['cara'] = 25
age['amy'] = 22पढ़ने से पहले जाँचिए
कुंजी पर निर्भर होने से पहले in से उसकी मौजूदगी जाँचिए। इससे KeyError से बचाव होता है और आपका तर्क स्पष्ट रहता है।
if 'bob' in age:
print(age['bob'])मानों को स्थानों से जोड़ना
एक प्रसिद्ध तरकीब में प्रत्येक मान का index संग्रहीत किया जाता है, ताकि बाद में यह पता लगाया जा सके कि वह एक ही चरण में कहाँ था। युग्म खोजने वाले कार्यों के लिए यह बहुत उपयोगी है।
pos = {}
for i, v in enumerate(nums):
pos[v] = iयुग्मों पर लूप चलाना
items के साथ कुंजियों और मानों पर एक साथ पुनरावृत्ति कीजिए। लूप के भीतर प्रत्येक मान को फिर से खोजने की तुलना में यह अधिक साफ़ तरीका है।
for name, a in age.items():
print(name, a)कुंजियाँ हैश योग्य होनी चाहिए
डिक्शनरी की कुंजियाँ hashable होनी चाहिए, इसलिए संख्याओं, स्ट्रिंगों या टपलों का उपयोग कीजिए। सूची कुंजी नहीं हो सकती, लेकिन पूर्णांकों का टपल हो सकता है।
seen = {(0, 0): 'start'}त्वरित जाँच
आप ऐसी कुंजी पढ़ना चाहते हैं जो शायद मौजूद न हो, और प्रोग्राम भी रुकना नहीं चाहिए।
पुनरावलोकन
एक dictionary O(1) खोज के लिए कुंजियों को मानों से जोड़ती है। सुरक्षित पठन के लिए get का उपयोग कीजिए और धीमी खोजों को तुरंत उत्तरों में बदलने के लिए अनुक्रमांक संग्रहीत कीजिए। 🚀
एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 30
- पाठ
- 120
अक्सर पूछे जाने वाले प्रश्न
क्या “Lookup Tables के रूप में Dictionaries” पाठ निःशुल्क है?
हाँ—“Lookup Tables के रूप में Dictionaries” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Competitive Programming Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Competitive Programming Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Lookup Tables के रूप में Dictionaries” में मैं क्या सीखूँगा?
तेज़ access के लिए keys को values से map करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Competitive Programming Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Competitive Programming Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Competitive Programming Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।
“Lookup Tables के रूप में Dictionaries” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Competitive Programming Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Competitive Programming Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Membership और Deduplication के लिए Sets
- Lookup Tables के रूप में Dictionaries
- Counter और defaultdict का प्रयोग
- Map से Group और Bucket बनाना