如何在python中从dict中的列表中提取特定值?
我下载了一个json文件,并将其作为dict导入python。现在dict显示它只有一个len,即2个'id'和'stats'。我想将“stats”的值提取为一个单独的dict,以便进一步操作数据。我想进一步做的操作是,我只需要“stats”的第一部分。因此,我只能得到球员全名为“莱尼·汉佩尔”的数据 我的问题: 1.如何将“stats”的值放入单独的dict中? 2.如何仅获取“player\u fullname”的值:“Lenny Hampel”?如何在python中从dict中的列表中提取特定值?,python,list,dictionary,Python,List,Dictionary,我下载了一个json文件,并将其作为dict导入python。现在dict显示它只有一个len,即2个'id'和'stats'。我想将“stats”的值提取为一个单独的dict,以便进一步操作数据。我想进一步做的操作是,我只需要“stats”的第一部分。因此,我只能得到球员全名为“莱尼·汉佩尔”的数据 我的问题: 1.如何将“stats”的值放入单独的dict中? 2.如何仅获取“player\u fullname”的值:“Lenny Hampel”? stats是一个dict列表,而不是dic
stats是一个dict列表,而不是dict。要将该列表作为单独的变量获取,只需:
stats = data['stats']
要提取所有名称,请使用列表:
names = [d['player_fullname' ] for d in data['stats']]
要获得该列表中的特定dict,请使用:
lennymatch = next(d for d in data if d['player_fullname'] == "Lenny Hampel")
如果名称不在列表/目录中,这将引发错误如果希望返回空目录,则根据需要使用默认参数next或try/except
dct_lst = lennymatch1["stats"]
然后是名为“Lenny Hampel”的球员:
一气呵成
player = [item
for item in lennymatch1["stats"]
if item["player_fullname"] == "Lenny Hampel"]
你试过什么,到底有什么问题?读例如。
player = [item
for item in lennymatch1["stats"]
if item["player_fullname"] == "Lenny Hampel"]