Python从di创建对象列表

2024-04-26 07:05:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了用户和他们的信息

{'Username': 'username', 'Attributes': [{'Name': 'sub', 'Value': 'userSub'}, {'Name': 'email', 'Value': 'email'}

我想把它重组成一个对象数组

例如)[{username: 'username', sub: 'userSub', email: 'email'}, {username: 'secondUsername', sub: 'secondSub'...}]

如何在不手动输入每个值的情况下完成此操作,因为每个用户可能有不同的属性

到目前为止我有这个

^{2}$

这将返回正确的结构,但我需要动态添加用户属性,而不是手动输入每个索引或字符串值


Tags: 对象用户name信息属性valueemailusername
1条回答
网友
1楼 · 发布于 2024-04-26 07:05:41

我首先用它的username键创建每个dict,然后使用update方法添加其余的键。在

from operator import itemgetter
get_kv_pairs = itemgetter('Name', 'Value')
# e.g.
# get_kv_pairs({'Name': 'sub', 'Value': 'userSub'}) == ('sub', 'userSub')

user_list = []

for user in response['Users']:
    d = {'username': user['Username']}
    kv_pairs = map(get_kv_pairs, user['Attributes'])
    d.update(kv_pairs)
    user_list.append(d)

相关问题 更多 >