python 用for循环生成字典_我需要创建一个for循环来生成嵌套字典

本文介绍如何利用Python的for循环生成一个嵌套字典,其中外层字典的键为运动,内层字典的键为运动员,值为对应的奖牌数。在处理从get_country_stats()函数获取的数据时,需要检查并创建新的运动字典,并根据运动员和奖牌数更新内层字典。
摘要由CSDN通过智能技术生成

我需要创建一个for循环,该循环会在每次检测到不存在的键时生成一个新的嵌套字典.我正在从以前的函数中获取外部字典的信息.

>它将需要创建一个字典,以可用的运动作为其键,并以字典作为其

值.

>在内部词典中,运动员名称将用作其键和奖牌数

(整数)将为其值.

键=运动,价值= {:}

CSE 231春季2019

>该函数将从get_country_stats()的字典中循环查找

运动员,运动和奖牌.请注意,当您想为一项新运动添加一名运动员时,您需要

首先为该运动创建一个空字典,然后再向其添加运动员.

>奖章的类型(金,银,铜)与我们的新词典无关,它们都是

视为1枚勋章.

我启动了两个空字典,外字典和内字典.然后创建一个外部for循环,该循环遍历所有键值对并返回一个列表

def display_best_athletes_per_sport(Athlete,Country,Sports):

medals = 0

outer_dict = {}

inner_dict = {}

for key,value in Country.items():

for item in value:

athlete = item[0]

medals = item[5]

sport = item[3]

inner_dict = {athlete:medals}

outer_dict = {sport:inner_dict}

if sport not in outer_dict:

new_dict[sport] = value[i]

if medals in value:

medals += 1

else:

medals = 1

如果找不到所需的键(运动),我希望能够生成新的外部词典,每次为特定运动员找到奖牌时,都要更新内部词典的值.

这是Country函数的输出,该函数正在即时尝试中使用:

{'FIN': [

('Juhamatti Tapio Aaltonen','Finland',2014,'ice hockey',"ice hockey men's ice hockey",'bronze'),('Paavo Johannes Aaltonen',1948,'gymnastics',"gymnastics men's individual all-around","gymnastics men's team all-around",'gold'),"gymnastics men's horse vault","gymnastics men's pommelled horse",1952,'bronze')],'NOR': [

('Kjetil Andr Aamodt','Norway',1992,'alpine skiing',"alpine skiing men's super g",('Kjetil Andr Aamodt',"alpine skiing men's giant slalom",1994,"alpine skiing men's downhill",'silver'),"alpine skiing men's combined",2002,2006,('Ann Kristin Aarnes',1996,'football',"football women's football",'NED': [('Pepijn Aardewijn','Netherlands','rowing',"rowing men's lightweight double sculls",'silver')]}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值