如何仅在Python中获取嵌套列表项的值

时间:2020-03-19 11:45:54

标签: python list nested-lists

我有一个列表,我可以打印该列表。但是,我在列表中还有另一个列表。我只能在嵌套列表中获取特定项目吗?

例如:

import json

x = {
  "name": "John",
  "age": 30,
  "married": True,
  "divorced": False,
  "children": ("Ann","Billy"),
  "pets": None,
  "cars": [
    {"model": "BMW 230", "mpg": 27.5},
    {"model": "Ford Edge", "mpg": 24.1}
  ]
}

# convert into JSON:
y = json.dumps(x)

# the result is a JSON string:
print(y)

在这里,如果我只想打印汽车型号,该如何打印?

型号= BMW230

可以帮忙吗?谢谢。

1 个答案:

答案 0 :(得分:3)

您的数据结构x是一个字典。如果您只想从字典x中打印汽车型号,则可以使用列表理解

print([car['model'] for car in x["cars"]])
# ['BMW 230', 'Ford Edge']

或者您可以使用正常的for循环打印每个模型:

for car in x['cars']:
    print(car['model'])

# BMW 230
# Ford Edge

如上所示,要访问字典 values ,您需要指定键,例如x['cars'],其中'cars' key 中的键。字典。您可以查看documentation,以获取有关如何使用字典的更多有用信息。