python 搜索包含嵌套字典列表的字典

标签 python list dictionary

我希望从字典中提取所有“符号”,如下所示:

file_data = json.load(f)

{
  "symbolsList" : [ {
    "symbol" : "SPY",
    "name" : "SPDR S&P 500",
    "price" : 261.56,
    "exchange" : "NYSE Arca"
  }, {
    "symbol" : "CMCSA",
    "name" : "Comcast Corporation Class A Common Stock",
    "price" : 35.49,
    "exchange" : "Nasdaq Global Select"
  }, {
    "symbol" : "KMI",
    "name" : "Kinder Morgan Inc.",
    "price" : 13.27,
    "exchange" : "New York Stock Exchange"
  }
}

查找后我找到了一种访问某些符号的方法。但我想以列表或字典的形式获取所有符号,这对我来说并不重要。 这就是我得到的:

print([next(item for item in file_data["symbolsList"] if item["symbol"] == "SPY")])

我知道问题出在下一个函数上,我只是不知道如何获取所有符号

最佳答案

您可以使用列表理解:

[e['symbol'] for e in d['symbolsList']]

输出:

['SPY', 'CMCSA', 'KMI']

使用 for 循环实现同样的效果:

result = []
for e in d['symbolsList']
    result.append(e['symbol'])

关于python 搜索包含嵌套字典列表的字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60966108/

相关文章:

python - 在 Python 中对一组值进行分区

python - 使用 python 透视 CSV 字符串,而不使用 pandas 或任何类似的库

image - 使用 maphilight.js 的响应式图像

python - 如何在重新训练时初始化tensorflow.contrib.slim full_connected 层的权重和偏差?

python - python 中的矩阵问题

r - 如何在列表列表中对向量进行子集

python - 如何将嵌套字典列表转换为字符串,反之亦然

python - 如何进行三级 for 循环

python - 矩阵数据结构

python - 在循环的每次迭代中将函数作为 python 中的新进程运行