简体   繁体   English

Python-使用 lambda 访问字典的值

[英]Python-Accessing values of dictionary using lambda

Given dict:给定字典:

dict=[{'Confirmed_cases': {'Brazil': 1600,'Indonesia': 2400}, 'Death_cases': {'Brazil':30, 'Indonesia': 68}] dict=[{'Confirmed_cases': {'Brazil': 1600,'Indonesia': 2400}, 'Death_cases': {'Brazil':30, 'Indonesia': 68}]

how can i get 1600 values from confirmed_cases using lambda?如何使用 lambda 从confirmed_cases 中获取1600 个值? based on user input = Brazil.基于用户输入 = 巴西。

This should work:这应该有效:

data = [{'Confirmed_cases' : {'Brazil' : 1600,'Indonesia' : 2400}, 'Death_cases': {'Brazil' :30, 'Indonesia' : 68}}]
confirmed_cases = lambda x: data[0]['Confirmed_cases'][x]
print(confirmed_cases('Brazil')) # > 1600

Not sure if its a good practice to name your dictionaries dict though.不过,不确定将字典命名为dict是否是一种好习惯。 I would imaging its a reserved name.我会想象它的保留名称。

Hope I could help: :)希望我能帮上忙::)

This can help you out.这可以帮助你。 This will ask for user input and run on while loop.这将要求用户输入并在while循环上运行。 If you don't want you can remove the while loop如果你不想,你可以删除while循环

yourDict = [{'Confirmed_cases': {'Brazil': 1600, 'Indonesia': 2400},
             'Death_cases': {'Brazil': 30, 'Indonesia': 68}}]


while True:
    country = str(input())
    if country in yourDict[0]['Confirmed_cases']:
        print(yourDict[0]['Confirmed_cases'][country])
    else:
        print("Please select from the list below ", str(list(yourDict[0]['Confirmed_cases'])))

Input:输入:

Brazil

output: output:

1600

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM