我正在尝试制作一款游戏,要求用户根据从字典列表中随机选择的首都猜测一个国家(类似于底部的链接)。
一共猜10个国家,猜对得1分,共10分。
我导入了一个变量“countries”,其中包含如下字典列表:
[{'capital': 'Andorra la Vella',
'code': 'AD',
'continent': 'Europe',
'name': 'Andorra',
'timezones': ['Europe/Andorra']},
{'capital': 'Kabul',
'code': 'AF',
'continent': 'Asia',
'name': 'Afghanistan',
'timezones': ['Asia/Kabul']},
那么如何根据特定键名打印随机选择呢?在这种情况下,任何词典中的任何“首都”。
请您参考如下方法:
random.choice 非常适合这个用例:)
import random
country_dlist = [{'capital': 'Andorra la Vella',
'code': 'AD',
'continent': 'Europe',
'name': 'Andorra',
'timezones': ['Europe/Andorra']},
{'capital': 'Kabul',
'code': 'AF',
'continent': 'Asia',
'name': 'Afghanistan',
'timezones': ['Asia/Kabul']}
]
def run():
tot_points = 0
num_of_ques = len(country_dlist)
for i in range(num_of_ques):
choice = random.choice(country_dlist)
que = country_dlist.remove(choice)
capital = raw_input("Please enter the captial for country {}: ".format(choice['name']))
if capital.lower() == choice['capital'].lower(): # case insensitive match :)
tot_points += 1
return tot_points
points = run()
print("You scored {} points".format(points))
