遍历字典python列表

时间:2018-06-28 11:04:12

标签: python list dictionary

我正在尝试访问列表中的字典,但似乎无法让我的for循环获取键,然后获取值。

我在这里放置了一张图片,以便于我解释。

enter image description here

所以您可以看到,我想导航到currency = AUD并将余额值分配给变量,将其命名为aud_balance

for curr in result_bal_qr:
    for k in curr: 
        if curr[k] == 'AUD':

我似乎无法获取密钥AUD。所以我正式被困住了。

我试图在列表等中搜索字典,但没有我的问题的例子,或者甚至可能我理解的问题是错误的(很有可能)

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

您有字典列表。您想在迭代过程中遍历列表,但又不想遍历每个字典本身。您只想查看其currency键。所以:

for curr in result_bal_qrp:
    if curr['currency'] == 'AUD':
        print(curr['balance'])

注意,如果要多次遍历此列表以查找不同的货币,则可能值得将其转换为简单的货币余额法则:

curr_dict = {d['currency']: d['balance'] for d in result_bal_qrp}

现在您可以执行curr_dict['AUD']来获取澳大利亚的余额。

答案 1 :(得分:0)

您可以使用list Comprehension

aud_balance = [d['balance'] for d in l if d['currency'] == 'AUD']