我希望尝试设置一个包含特定字典的列表.我希望结构类似于以下内容:
[{'label': 'Abdelnaby, Alaa', 'value': '76001'},
{'label': 'Abdul-Aziz, Zaid', 'value': '76002'},
{'label': 'Abdul-Jabbar, Kareem', 'value': '76003'}]
目前,我提取的数据是在熊猫数据框中.以下示例……
PlayerID Name Current Player First Season Last Season
76001 Abdelnaby, Alaa 0 1990 1994
76002 Abdul-Aziz, Zaid 0 1968 1977
76003 Abdul-Jabbar, Kareem 0 1969 1988
51 Abdul-Rauf, Mahmoud 0 1990 2000
1505 Abdul-Wahad, Tariq 0 1997 2003
如果这足够,请告诉我.非常感谢你的帮助!
解决方法:
选择你的列,重命名它们并用orient =’records’调用to_dict来获得一个dicts列表,
(df.reindex(['Name', 'PlayerID'], axis=1)
.set_axis(['label', 'value'], axis=1, inplace=False)
.to_dict('r'))
# [{'label': 'Abdelnaby, Alaa', 'value': 76001},
# {'label': 'Abdul-Aziz, Zaid', 'value': 76002},
# {'label': 'Abdul-Jabbar, Kareem', 'value': 76003},
# {'label': 'Abdul-Rauf, Mahmoud', 'value': 51},
# {'label': 'Abdul-Wahad, Tariq', 'value': 1505}]
您可以通过将.to_dict(‘r’)更改为.to_json(orient =’records’)来输出JSON.
[dict(zip(('label', 'value'), r)) for r in df[['Name', 'PlayerID']].values]
# [{'label': 'Abdelnaby, Alaa', 'value': 76001},
# {'label': 'Abdul-Aziz, Zaid', 'value': 76002},
# {'label': 'Abdul-Jabbar, Kareem', 'value': 76003},
# {'label': 'Abdul-Rauf, Mahmoud', 'value': 51},
# {'label': 'Abdul-Wahad, Tariq', 'value': 1505}]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。