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

एक स्ट्रिंग से एक शब्दकोश बनाने के लिए पायथन प्रोग्राम


इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे।

समस्या कथन - हमें एक स्ट्रिंग इनपुट दिया जाता है, हमें इसे डिक्शनरी टाइप में बदलने की जरूरत होती है

यहां हम बिल्ट-इन dict() फ़ंक्शन का उपयोग किए बिना समस्या को हल करने के दो तरीकों पर चर्चा करेंगे।

विधि 1 - eval() विधि का उपयोग करना

Eval पद्धति का उपयोग केवल तभी किया जाता है जब वाक्य रचना या स्ट्रिंग का निर्माण किसी शब्दकोश के जैसा होता है। स्ट्रिंग का शब्दकोश में सीधा रूपांतरण उस स्थिति में हो सकता है, जैसा कि नीचे बताया गया है।

उदाहरण

# String
string = "{'T':1, 'U':2, 'T':3, 'O':4, 'R':5}"
# eval() function
dict_string = eval(string)
print(dict_string)
print(dict_string['T'])
print(dict_string['T'])

आउटपुट

{'T': 3, 'U': 2, 'O': 4, 'R': 5}
3
3

विधि 2 - जनरेटर फ़ंक्शन का उपयोग करना

यदि हमें एक स्ट्रिंग इनपुट मिलता है जो किसी शब्दकोश के सिंटैक्स जैसा दिखता है तो जनरेटर अभिव्यक्तियों की सहायता से हम इसे एक शब्दकोश में परिवर्तित कर सकते हैं।

उदाहरण

string = "T-3 , U-2 , T-1 , O-4 , R-5"
# Converting string to dictionary
dict_string = dict((x.strip(), y.strip()) for x, y in
(element.split('-') for element in string.split(', ')))
print(dict_string)
print(dict_string['T'])
print(dict_string['T'])

आउटपुट

{'T': '1', 'U': '2', 'O': '4', 'R': '5'}
1
1

निष्कर्ष

इस लेख में, हमने सीखा है कि कैसे हम एक स्ट्रिंग से एक शब्दकोश बना सकते हैं।


  1. पायथन प्रोग्राम में एक स्ट्रिंग से nth कैरेक्टर को हटाना

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

  1. एक स्ट्रिंग से nवें वर्ण को हटाने के लिए पायथन कार्यक्रम

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

  1. हम सूची से अजगर स्ट्रिंग कैसे बनाते हैं?

    पायथन में एक इन-बिल्ट जॉइन () फ़ंक्शन है जो तत्वों के बीच विभाजक को सम्मिलित करके अनुक्रम ऑब्जेक्ट में तत्वों को जोड़कर एक स्ट्रिंग देता है। यदि हमें बिना किसी विभाजक के एक स्ट्रिंग की आवश्यकता है, तो हम इसे नल स्ट्रिंग के साथ प्रारंभ करते हैं >>> lst=['h','e','l',&#