python - 如何使字典中的每个“用户”成为键以及它们所属的所有“组”的值?
问题描述
我想要一个可以打印打印语句的结果;
{"admin" : ["local", "public", "administrator"],
"user A" : ["local"],
"user B" : ["public"]}
这是我尝试过的:
def groups_per_user(groups_dictionary):
user_groups = {}
for groups, users in groups_dictionary.items():
for user in users:
user_groups[user] = groups
return(user_groups)
print(groups_per_user({"local":["admin", "user A"], "public":["admin", "user B"], "administrator": ["admin"]}))
输出
{'admin': 'administrator', 'user A': 'local', 'user B': 'public'}
解决方案
只需修改您的for
循环,如下所示:
for user in users:
user_groups.setdefault(user, [])
user_groups[user].append(groups)