如何在Python中迭代字典列表

问题描述 投票:0回答:1

编辑:抱歉 - 阅读评论后我意识到这是一本字典的字典(?)

解决这个问题的答案是在 for 循环中将其更改为 ...price_list["market"].values() 。非常感谢。

原文:

我从 API 中以这种格式返回一个值:

{'市场': {'14912878': {'成本': 45695, '数量': 2000, 'total_cost': 91390000},...}

我正在尝试迭代此操作以获取每个项目 ID 的“成本”(此处为“14912878”,但还有很多其他项目 ID)。

这是我尝试过的,但它说我无法在 str 上运行 get ,因为它正在拉取项目 ID。我不知道如何迭代项目 ID 来提取“成本”(而不是总成本)。

price_list = [price.get('cost',0) for price in item_list["market"]]

我还尝试将其放入 for 循环中:

for item in price_list["market"]:
     price_list = [price.get('cost',0) for price in item_list["market"][item]]

如果有人可以帮助我,我将不胜感激。

python list iteration
1个回答
1
投票
data = {
    'market': {
        '14912878': {'cost': 45695, 'quantity': 2000, 'total_cost': 91390000},
        # ... other items
    }
}

for item_id, item_data in data['market'].items():
    cost = item_data['cost']
    print(f"Item ID: {item_id}, Cost: {cost}")
© www.soinside.com 2019 - 2024. All rights reserved.