比较python中的两个字典列表

py_dev

我有两个字典列表,分别命名为category和sub_category。

category = [{'cat_id':1,'total':300,'from':250},{'cat_id':2,'total':100,'from':150}]
sub_category = [{'id':1,'cat_id':1,'charge':30},{'id':2,'cat_id':1,'charge':20},{'id':3,'cat_id':2,'charge':30}]

我想改变的值charge,以0在sub_category如果价值total >= fromcategory哪里cat_id的相等。

预期结果是:

sub_category = [{'id':1,'cat_id':1,'charge':0},{'id':2,'cat_id':1,'charge':0},{'id':3,'cat_id':2,'charge':30}]

我设法用这个来得到结果

for sub in sub_category:
    for cat in category:
        if cat['cat_id'] == sub['cat_id']:
            if cat['total'] >= cat['from']:
                sub['charge']=0

但是我想知道更好的方法。任何帮助将不胜感激。

拉克什

这是一种方法。将类别更改为dict即可轻松循环播放。

例如:

category = [{'cat_id':1,'total':300,'from':250},{'cat_id':2,'total':100,'from':150}]
sub_category = [{'id':1,'cat_id':1,'charge':30},{'id':2,'cat_id':1,'charge':20},{'id':3,'cat_id':2,'charge':30}]

category = {i.pop('cat_id'): i for i in category}

for i in sub_category:
    if i['cat_id'] in category:
        if category[i['cat_id']]['total'] >= category[i['cat_id']]['from']:
            i['charge'] = 0
print(sub_category)  

输出:

[{'cat_id': 1, 'charge': 0, 'id': 1},
 {'cat_id': 1, 'charge': 0, 'id': 2},
 {'cat_id': 2, 'charge': 30, 'id': 3}]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

比较Python中的两个字典列表

来自分类Dev

比较两个字典列表

来自分类Dev

Python:两个字典列表的比较

来自分类Dev

比较python中的两个字典

来自分类Dev

如何比较python中的两个字典

来自分类Dev

用Python方式比较两个字典列表中的值

来自分类Dev

优化在python中合并两个字典列表

来自分类Dev

如何使用python比较具有字典列表的两个字典元素

来自分类Dev

如何比较两个字典与内部列表?

来自分类Dev

我如何比较两个字典列表

来自分类Dev

比较两个字典中的匹配项

来自分类Dev

比较两个列表中存在的两个字典的键,并减去它们各自的值

来自分类Dev

如何比较python中的两个字典并相应地替换值?

来自分类Dev

在python中找到两个字典列表的差异

来自分类Dev

如何比较两个字典值列表,并在 Python3 中更改另一个列表值时更新列表值?

来自分类Dev

Python 3,添加两个字典并在与两个字典都有的键关联的列表中添加项目

来自分类Dev

在Python中合并具有相同键的列表的两个字典

来自分类Dev

PYTHON:如何以最pythonic的方式合并列表中的两个字典

来自分类Dev

在python中合并两个字典,并将列表作为值

来自分类Dev

在两个字典之间的python列表中添加值

来自分类Dev

合并两个字典列表以在 python 中创建第三个

来自分类常见问题

在Python中相交两个字典

来自分类Dev

像这样在python中合并两个字典

来自分类Dev

字典理解以比较两个字典

来自分类Dev

如何有效地比较两个字典列表以宣布“赢家”

来自分类Dev

如何合并两个字典的字典列表

来自分类Dev

C#比较两个字典是否相等

来自分类Dev

比较以numpy矩阵为值的两个字典

来自分类Dev

从字典上比较两个字符数组

Related 相关文章

热门标签

归档