-
郎朗坤
您可以按以下方式执行此操作,使用keys()字典的count()方法和列表中的方法来计算每个元素的出现次数:inDict = {'A': ['red', 'red', 'blue'], 'B': ['red', 'green'], 'C': ['blue', 'green']}for key in inDict.keys(): print(key + ': ', end=" ") print(", ".join([elem + ' ' + str(inDict[key].count(elem)) for elem in set(inDict[key])]))结果:A: blue 1, red 2B: green 1, red 1C: green 1, blue 1
-
噜噜哒
您可以创建一个dictwith collections.Counters:from collections import Counterd = {'A': ['red', 'red', 'blue'], 'B': ['red', 'green'], 'C': ['blue', 'green']}counter_dict = { k: Counter(v) for k, v in d.items()}for k, v in counter_dict.items(): print(f'{k}:', *(f'{i} {j}' for i, j in v.items()))>>>A: red 2 blue 1 B: red 1 green 1 C: blue 1 green 1
-
犯罪嫌疑人X
试试这个:data = { 'A': ['red', 'red', 'blue'], 'B': ['red', 'green'], 'C': ['blue', 'green']}from collections import Countercount = { key: Counter(colors) for key, colors in data.items() }for key, colors in count.items(): print(key + ':', ', '.join('{} {}'.format(c, n) for c, n in colors.items()))它会打印:A: blue 1, red 2C: blue 1, green 1B: green 1, red 1