gpt4 book ai didi

python - "query"字典的 Pythonic 方式

转载 作者:行者123 更新时间:2023-11-28 20:01:04 25 4
gpt4 key购买 nike

我有一个嵌套字典,其中包含有关书籍的数据:

  • UID
  • 条件
  • 价格

定义如下:

books = {
'uid1':
{'price': '100',
'condition': 'good'},
'uid2':
{'price': '80',
'condition': 'fair'},
'uid3':
{'price': '150',
'condition': 'excellent'},
'uid4':
{'price': '70',
'condition': 'fair'},
'uid5':
{'price': '180',
'condition': 'excellent'},
'uid6':
{'price': '60',
'condition': 'fair'}
}

我需要获取按条件分组的平均价格。因此,预期的结果是:

{'fair': 70, 'good': 100, 'excellent': 165}

最符合 Pythonic 的方法是什么?

最佳答案

使用 collections.defaultdict

演示:

from collections import defaultdict

res = defaultdict(list)
for k,v in books.items():
res[v['condition']].append(int(v['price']))

print({k: sum(v)/len(v) for k, v in res.items() })

输出:

{'good': 100, 'fair': 70, 'excellent': 165}

关于python - "query"字典的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51948664/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com