Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में ऑर्डर किया गया डिक्ट

ऑर्डर्ड डिक्ट पायथन में तानाशाही वस्तु का एक उपवर्ग है। OrderedDict और dict के बीच एकमात्र अंतर यह है कि, OrderedDict में, यह सम्मिलित किए गए कुंजियों के क्रम को बनाए रखता है। निर्देश में, आदेश हो सकता है या नहीं भी हो सकता है।

The OrderedDict एक मानक पुस्तकालय वर्ग है, जो संग्रह . में स्थित है मॉड्यूल।

इसका उपयोग करने के लिए सबसे पहले हमें इसे संग्रह . आयात करना होगा मानक पुस्तकालय मॉड्यूल।

import collections

इस खंड में हम OrderedDict और OrderedDict और Dict के बीच अंतर पर कुछ संचालन देखेंगे।

हम Dict और OrderedDict में कुछ कुंजियाँ और मान रख सकते हैं। इस उदाहरण में हम देख सकते हैं कि डिक्ट का क्रम भिन्न हो सकता है। लेकिन ऑर्डर्ड डिक्ट के लिए। इसे ठीक कर दिया जाएगा।

उदाहरण कोड

import collections
#Create normal dict
my_dict = {}
my_dict['AA'] = 11
my_dict['BB'] = 22
my_dict['CC'] = 33
my_dict['DD'] = 44
for item in my_dict.items():
   print(item)
print()
#Create ordered dict
my_ord_dict = collections.OrderedDict()
my_ord_dict['AA'] = 11
my_ord_dict['BB'] = 22
my_ord_dict['CC'] = 33
my_ord_dict['DD'] = 44
for item in my_ord_dict.items():
   print(item)

आउटपुट

('AA', 11)
('CC', 33)
('BB', 22)
('DD', 44)

('AA', 11)
('BB', 22)
('CC', 33)
('DD', 44)

निर्दिष्ट कुंजी का मान बदलना

जब किसी निर्दिष्ट कुंजी का मान बदल दिया जाता है, तो ऑर्डर्ड डिक्ट के लिए चाबियों का क्रम नहीं बदलेगा। हम देख सकते हैं कि डिक्ट प्रकार की वस्तुओं के लिए कथन सत्य हो भी सकता है और नहीं भी।

उदाहरण कोड

import collections
#Create normal dict
my_dict = {}
my_dict['AA'] = 11
my_dict['BB'] = 22
my_dict['CC'] = 33
my_dict['DD'] = 44
for item in my_dict.items():
   print(item)
#Change the value for key BB
my_dict['BB'] = 100
print('After changing in Dict')
for item in my_dict.items():
   print(item)
print()
#Create ordered dict
my_ord_dict = collections.OrderedDict()
my_ord_dict['AA'] = 11
my_ord_dict['BB'] = 22
my_ord_dict['CC'] = 33
my_ord_dict['DD'] = 44
for item in my_ord_dict.items():
   print(item)
#Change the value for key BB
my_ord_dict['BB'] = 100
print('After changing in Ordered Dict')
for item in my_ord_dict.items():
   print(item)

आउटपुट

('AA', 11)
('BB', 22)
('CC', 33)
('DD', 44)
After changing in Dict
('AA', 11)
('CC', 33)
('DD', 44)
('BB', 100)

('AA', 11)
('BB', 22)
('CC', 33)
('DD', 44)
After changing in Ordered Dict
('AA', 11)
('BB', 100)
('CC', 33)
('DD', 44)

OrderedDict में तत्वों को हटाना और पुन:सम्मिलित करना

जब ऑर्डर्ड डिक्ट से एक तत्व हटा दिया जाता है और उस कुंजी और मूल्य पर पुन:सम्मिलित करने का कार्य करता है, तो यह उसे पीछे की ओर धकेल देगा। हालांकि यह इंसर्ट करते समय ऑर्डर बनाए रखता था, लेकिन डिलीट करने के लिए, यह ऑर्डरिंग जानकारी को हटा देता है, और फिर से इंसर्ट करने के लिए नई एंट्री के रूप में माना जाता है।

उदाहरण कोड

import collections
#Create ordered dict
my_ord_dict = collections.OrderedDict()
my_ord_dict['AA'] = 11
my_ord_dict['BB'] = 22
my_ord_dict['CC'] = 33
my_ord_dict['DD'] = 44
for item in my_ord_dict.items():
   print(item)
#Delete item in key BB
my_ord_dict.pop('BB')
print('After Deleting')
for item in my_ord_dict.items():
   print(item)
#re-inserting item 
my_ord_dict['BB'] = 22
print('After Re-inserting')
for item in my_ord_dict.items():
   print(item)    

आउटपुट

('AA', 11)
('BB', 22)
('CC', 33)
('DD', 44)
After Deleting
('AA', 11)
('CC', 33)
('DD', 44)
After Re-inserting
('AA', 11)
('CC', 33)
('DD', 44)
('BB', 22)

  1. साइकिल छँटाई के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सरणी दी गई है, हमें इसे चक्र प्रकार की अवधारणा का उपयोग करके क्रमबद्ध करने की आवश्यकता है। यह एक इन-प्लेस एल्गोरिथम है और चक्रों के निर्माण से अदला-बदली होती है। आइए अब नीचे दिए गए कार्यान्वयन में समाधान दे

  1. issuperset () पायथन में

    इस लेख में, हम पायथन में issuperset() और विभिन्न क्षेत्रों में इसके कार्यान्वयन के बारे में जानेंगे। यह विधि बूलियन ट्रू लौटाती है यदि एक सेट बी के सभी तत्वों में सभी तत्व सेट ए होते हैं जो एक तर्क के रूप में पारित होते हैं और यदि ए के सभी तत्व बी में मौजूद नहीं होते हैं तो झूठा रिटर्न देता है। इस

  1. पायथन डिक्शनरी को मूल्य से कैसे क्रमबद्ध करें?

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