मैंने कुछ देशों और उनकी आबादी के साथ एक सरल शब्दकोश बनाया है। इसके अलावा, मैंने उपयोगकर्ता के लिए एक देश इनपुट करने के लिए कोड जोड़ा है और यदि वह एक मैच है, तो कोड को परिभाषित डिक्शनरी से जनसंख्या को वापस करना चाहिए। यह तब तक किया जाता है जब तक उपयोगकर्ता '0' इनपुट नहीं करता। यहाँ मेरा प्रश्न है: मैं आगे देख रहा हूँ कि कार्यक्रम उपयोगकर्ता को एक संदेश प्रदर्शित करे कि जनसंख्या अज्ञात है यदि देश शब्दकोश का हिस्सा नहीं है और उपयोगकर्ता उस मामले में जनसंख्या दर्ज करता है। उदाहरण के लिए, यदि उपयोगकर्ता इनपुट सेशेल्स है, तो मुझे एक अज्ञात संदेश और जनसंख्या दर्ज करने का संकेत मिलना चाहिए। अंत में, मैं देश के लिए इन नए मूल्यों (मेरे उदाहरण में सेशेल्स) और दर्ज की गई जनसंख्या के साथ शब्दकोश को अपडेट करना चाहता हूं।

मेरा कोड अब तक है

def main():
    countryPop = {'Vatican': 800, 'Tuvalu': 10200, 'Nauru': 11000, 'Palau': 17900,
                  'San Marino': 33420, 'Monaco': 38300, 'Marshall Islands': 55500}

    while True:
        ctry = input('Enter country:')
        population = countryPop.get(ctry)
        print(population)
        if ctry == '0':
            break


if __name__ == '__main__':
    main()
0
meag_a 27 जिंदा 2020, 07:24

1 उत्तर

सबसे बढ़िया उत्तर
def main():
    countryPop = {'Vatican': 800, 'Tuvalu': 10200, 'Nauru': 11000, 'Palau': 17900,
                  'San Marino': 33420, 'Monaco': 38300, 'Marshall Islands': 55500}

    while True:
        ctry = input('Enter country:')
        population = countryPop.get(ctry)
        print(population)
        if ctry == '0':
            break
        elif ctry not in countryPop: #check if country is in dictionary
            popIn = input("Country Pop: ") #read country population
            countryPop[ctry]=popIn #update dictionary



if __name__ == '__main__':
    main()

मूल रूप से आपको केवल एक elif ctry not in countryPop: जोड़ने की आवश्यकता है, यह जांचने के लिए कि शब्दकोश में इनपुट देश है या नहीं। और यदि जनसंख्या इनपुट नहीं पढ़ा है और शब्दकोश को अपडेट करने के लिए countryPop[ctry]=popIn जैसा कुछ लिखें।

2
Vulpex 27 जिंदा 2020, 07:33