gpt4 book ai didi

python - 计算字典中项目的频率

转载 作者:太空宇宙 更新时间:2023-11-04 07:13:26 25 4
gpt4 key购买 nike

我有一个名为purchases 的字典,它以支付方式作为键,一个包含支付类型及其频率作为值的字典。示例格式如下:

{'Credit card': {'Grocery': 3, 'Gas': 1, 'Store': 2},
'Debit card': {'Food': 2},
'Check': {'Rent': 1, 'Utilities': 1}, … }

我想创建一个新字典,以付款方式的频率为键,以付款方式为值。期望的输出:

[{6: ['Credit card']}, {2: ['Debit card', 'Check']}]

到目前为止,这是我的代码:

artist_count = {}
for artist in artist_songs.keys():
if artist in artist_count:
artist_count[artist] += 1
else:
artist_count[artist] = 1
print(artist_count)

目前,这会输出一个字典,其中每个唯一的支付方式作为键,1 作为值。我在计算每个键的频率以及切换键和值时遇到困难。 (我相信我可以为前者使用 len 函数,但我还没有运气。)

如何创建一个以支付方式频率为键,以支付方式为值的新字典?

最佳答案

让我们分两步完成:

  1. 我们首先创建一个字典,其中键是支付类型,值是频率。
  2. 然后,我们对这个字典进行逆向,得到你想要的字典。

对于第一部分,

freq_dict = {}
for key in given_dict:
freq_dict[key] = 0
for item in given_dict[key]:
freq_dict[key]+=given_dict[key][item]

第二部分:

result_dict = {}
for key in freq_dict:
value = freq_dict[key]
if value not in result_dict:
result_dict[value] = []
result_dict[value].append(key)

given_dict 是我们开始使用的字典。

如果有什么不清楚的地方请告诉我:)

关于python - 计算字典中项目的频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59061659/

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