समस्या कमरे की संख्या और अतिथि विवरणों की एक सूची है जो मैंने सीधे एक txt फ़ाइल से फिसल दी है जिसे कक्ष संख्या के साथ एक शब्दकोश में कुंजी और विवरण के रूप में विवरण के रूप में रखा जाना चाहिए।मैं एक शब्दकोश को सॉर्ट कैसे करूं?
अतिथि सूची सचमुच एक सूची है, प्रत्येक आइटम कमरे का नंबर, अतिथि नाम, आगमन, प्रस्थान तिथियों का प्रतिनिधित्व करती है। उनके बगल में कुछ भी कमरे खाली हैं।
nlist = [['101'], ['102'], ['103'],
['201', ' John Cleese', ' 5/5/12', ' 5/7/12'], ['202'],
['203', ' Eric Idle', ' 7/5/12', ' 8/7/12'], ['301'], ['302'], ['303']]
असल में, इसे एक शब्दकोश में प्राप्त करना है। यहाँ मैं क्या करने की कोशिश की है:
guests = {}
for i in nlist:
if len(i) == 1:
key = i[0]
guests[key] = None
else:
key = i[0]
val = i[1],i[2],i[3]
guests[key] = val
जो मुझे देता है:
guests = {'201': (' John Cleese', ' 5/5/12', ' 5/7/12'),
'203': (' Eric Idle', ' 7/5/12', ' 8/7/12'), '202': None, '301': None,
'302': None, '303': None, '102': None, '103': None, '101': None}
आप देख सकते हैं शब्दकोश किसी विशेष क्रम में एक साथ रखा जाता है। हालांकि इस विशेष अभ्यास के लिए, शब्दकोश को निम्नतम से उच्चतम कमरे संख्या के क्रम में होना चाहिए। मुझे लगता है कि मैंने सोचा था कि यह प्रत्येक आंतरिक सूची के माध्यम से शुरुआत से अंत तक, फिर परीक्षण करेगा, और बस उस क्रम में शब्दकोश का निर्माण करेगा।
क्या कोई जानता है कि कोड को सही तरीके से कैसे लिखना है ताकि शब्दकोश {'101': कोई नहीं, '102', कोई नहीं, '103': कोई नहीं ... आदि)? और उम्मीद है कि कोई यह समझा सकता है कि मेरा कोड क्यों काम नहीं करता था जैसा कि मेरा इरादा भी था।
शब्दकोश प्रविष्टियां हैंश के रूप में संग्रहीत हैं और प्रकृति द्वारा, अनियंत्रित हैं। क्या आपके होमवर्क के लिए आपको एक शब्दकोश का उपयोग करने की आवश्यकता है? आपको उन्हें आदेश देने की आवश्यकता क्यों है? –
[पाइथन शब्दकोश में ऑर्डर करने वाले आइटम] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/3127945/items-ordering-in-python-dictionary) – geoffspear
क्षमा करें दोस्तों, मेरा शीर्षक थोड़ा भ्रामक है, है ना? मैं इस बात से ज्यादा दिलचस्पी लेता था कि उस विशेष तरीके से ताना क्यों झुका हुआ है। मैंने आपके सभी उत्तरों से जो कुछ इकट्ठा किया है वह यह है कि 'यह बस है' लॉल हां, इसे एक शब्दकोश की आवश्यकता होती है लेकिन अगर मैं – bang