python 编程 使用字典存储国家和首都,假设存储20个国家和他们的首都,程序提示用户回答10国家的首都并显示用户答对的个数。 >>中国的首都是?北京 (回车) >>日本的首都是? 东京 …… >>回答正确8次
时间: 2024-02-18 17:05:48 浏览: 28
好的,这是一个简单的 Python 编程问题。下面是代码实现:
```python
import random
# 定义一个字典,存储国家和首都
country_capital_dict = {'中国': '北京', '美国': '华盛顿', '法国': '巴黎', '英国': '伦敦', '德国': '柏林',
'俄罗斯': '莫斯科', '日本': '东京', '韩国': '首尔', '澳大利亚': '堪培拉', '新加坡': '新加坡',
'巴西': '巴西利亚', '加拿大': '渥太华', '墨西哥': '墨西哥城', '印度': '新德里', '埃及': '开罗',
'南非': '开普敦', '沙特阿拉伯': '利雅得', '阿联酋': '阿布扎比', '意大利': '罗马', '西班牙': '马德里'}
# 随机选择10个国家
countries = random.sample(country_capital_dict.keys(), 10)
# 记录答对的个数
correct_num = 0
# 逐个询问国家首都
for country in countries:
capital = input('{}的首都是?'.format(country))
if capital == country_capital_dict[country]:
print('回答正确!')
correct_num += 1
else:
print('回答错误,正确答案是{}。'.format(country_capital_dict[country]))
# 显示最终结果
print('您一共回答了{}个问题,其中{}个回答正确。'.format(len(countries), correct_num))
```
在上面的代码中,我们首先定义了一个字典 `country_capital_dict`,用于存储国家和首都的对应关系。然后,我们使用 `random.sample()` 方法随机选择出 10 个国家。接下来,我们使用 `for` 循环逐个询问用户国家的首都,并根据用户的回答进行判断。最后,我们统计答对的个数,并将最终结果进行显示。