gpt4 book ai didi

python - 在Python中,我可以在键:value pair?的分配中执行[如果存在]吗

转载 作者:太空宇宙 更新时间:2023-11-03 17:14:19 25 4
gpt4 key购买 nike

我正在执行 LDAP 搜索,结果正是我想要的。我正在将结果放入字典中。结果中的一些用户具有特定的键:值对,而另一些则没有。我希望所有用户都插入到我的新字典中。这是在 for 循环内创建的字典。

ldap_output_Emply_dict[result_affil[i][1]['uid'][0]] = [
result_affil[i][1]['mail'][0],
result_affil[i][1]['uconnPersonPrimaryAffiliation'][0],
result_affil[i][1]['eduPersonEntitlement']
]

目前 1553 名用户中只有 16 名拥有最后一项

result_affil[i][1]['eduPersonEntitlement']

我想要我的新字典中的所有 1553。我尝试的这个语法无效,这可能吗?

ldap_output_Emply_dict[result_affil[i][1]['uid'][0]] = [
result_affil[i][1]['mail'][0],
result_affil[i][1]['uconnPersonPrimaryAffiliation'][0],
if 'eduPersonEntitlement' in result_affil: result_affil[i][1]['eduPersonEntitlement']
]

最佳答案

can i perform [if exists] inside the assignment of a key:value pair?

是的,除了像 @6c1 提到的那样使用字典的 .get 方法之外,您还可以使用三元语句,如下所示:

d1 = {}
d2 = {1:1,2:2,3:3}

d1[4] = d2[4] if 4 in d2 else None

在您的代码中:

ldap_output_Emply_dict[result_affil[i][1]['uid'][0]] = [
result_affil[i][1]['mail'][0],
result_affil[i][1]['uconnPersonPrimaryAffiliation'][0],
result_affil[i][1]['eduPersonEntitlement'] if 'eduPersonEntitlement' in result_affil[i][1] else None
]

关于python - 在Python中,我可以在键:value pair?的分配中执行[如果存在]吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33787612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com