gpt4 book ai didi

python - 从字典列表中创建具有特定值的列表(键作为字符串,值是整数列表)

转载 作者:行者123 更新时间:2023-12-04 08:54:01 25 4
gpt4 key购买 nike

我有一个带有字符串的字典列表和一个字符串列表作为它们各自键的值:

list_of_dictionaries = [
{'id': 'ABBA', 'num': ['10', '3', '5', '1']},
{'id': 'ABAC', 'num': ['4', '5', '6', '20']}]
'id' 字符串中的每个字母对应于匹配索引处的 'num' 中的数字。因此,对于值 'ABBA',它将按顺序匹配每个位置的 'num' 中的值:A = 10,B = 3,B = 5,A = 1。我想返回一个包含 'num' 的 id 列表> 5 在每个字典中,同时保持其当前顺序。
这是我的尝试:
bad_values = ['','0','1','2','3','4','5']
final_ids =[]
for i in list_of_dictionaries:
list_of_high_num =[]
for id,num in enumerate(i.items()):
if i["num"] is not bad_values:
list_of_high_num.append(i["id"])
final_ids.append(list_of_high_num)
但是,我只是将原始 ID 字符串恢复到列表中。我哪里错了?
期望的输出是这样的:
final_list = [['A'], ['A', 'C']]

最佳答案

考虑每个 dictionary 的场景项目 len(id) = len(num)

list_of_dictionaries = [
{'id': 'ABBA', 'num': ['10', '3', '5', '1']},
{'id': 'ABAC', 'num': ['4', '5', '6', '20']}]

limit = 5

outerlist = []
for d in list_of_dictionaries:
innerlist = []
for x in range(len(d['num'])):
if int(d['num'][x]) > limit:
innerlist.append(d['id'][x])
outerlist.append(innerlist)

print(outerlist) # [['A'], ['A', 'C']]

关于python - 从字典列表中创建具有特定值的列表(键作为字符串,值是整数列表),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63941794/

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