解压python字典并保存为变量

许多

我从 pandas 列中提取了以下字符串(它是一个运动示例):

unpack ="{'TB': [['Brady', 'Godwin'], ['2023-RD1', '2023-RD4']], 'KC': [['Mahomes'], ['2023-RD2']]}"

要对字符串进行打包,我使用以下内容:

from ast import literal_eval
t_dict = literal_eval(unpack)
print(t_dict)

这给了我:

{'TB': [['Brady', 'Godwin'], ['2023-RD1', '2023-RD4']], 'KC': [['Mahomes'], ['2023-RD2']]}

我现在正在尝试将所有这些键/值提取到变量/列表中。我的预期输出是:

 team1 = 'TB'
 team2 = 'KC'                
 team1_trades_players = ['Brady', 'Godwin']
 team1_trades_picks = ['2023-RD1', '2023-RD4']
 team2_trades_players = ['Mahomes']
 team2_trades_picks = ['2023-RD2]

我尝试了以下方法,但我不确定如何将第一次迭代发送到team1和第二次迭代发送到team2

#extracting team for each pick
for t in t_dict:
    print(t)

给我:

TB
KC

然后对于值,我可以正确打印它们,但不确定如何发送回列表:

#extracting lists for each key:
for traded in t_dict.values():
    #extracting the players traded for each team
    for players in traded[0]:
        print(players)
    #extracting picks for each team
    for picks in traded[1]:
        print(picks)

产生:

Brady
Godwin
2023-RD1
2023-RD4
Mahomes
2023-RD2

我想我很接近,但错过了发回他们的变量/列表的最后一步。任何帮助将不胜感激!谢谢!

罗兰史密斯

如果事先知道团队的数量,那就很简单了:

team1, team2 = t_dict.keys()
team1_trades_players, team1_trades_picks = t_dict[team1]
team2_trades_players, team2_trades_picks = t_dict[team2]

如果事先不知道团队的数量,我建议只使用t_dict.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章