-2

我很想通过循环来匹配两个独立键的两个字典的值 - 希望if i in line_aum['id_class'] == line_investor['id_class']成为True,然后下一个求和函数将起作用:

但是它会产生不同的结果

到目前为止,我有:

for line_aum in aum_obj:
    for line_investor in investor_obj:
        if i in line_aum['id_class'] == line_investor['id_class']:
            total = (sum,line_investor['amount'], line_aum['value'])
            amount = line['id_class']
            print(amount,total)

示例数据:

{'fund_name': '', 'fund_code': 'LFE', 'aumc': '406.37', 'value': '500', 'ddate': '2013-01-01', 'id_fund': '165', 'currency': 'EUR', 'nav': '24.02', 'shares': '16.918', 'estimate': '0', 'id_class': '4526', 'class_name': 'LTD - CLASS B (EUR)'}
4

1 回答 1

2

如果和都是列表,则使用itertools.product而不是嵌套循环:aum_objinvestor_obj

from itertools import product

for line_aum, line_investor in product(aum_obj, investor_obj):
    if line_aum['id_class'] == line_investor['id_class']:
        # `line_aum` and `line_investor` have matching values for the `id_class` keys.
于 2013-05-01T17:26:35.173 回答