擅长:python、mysql、java
<p>以下是您可以使用的通用函数:</p>
<pre><code>a = [
{'column': 'NRX_TOTAL', 'severity': 1, 'threshold': 0.1},
{'column': 'TRX_TOTAL', 'severity': 1, 'threshold': 0.1},
{'column': 'NRX_TOTAL', 'severity': 2, 'threshold': 0.15},
{'column': 'TRX_TOTAL', 'severity': 2, 'threshold': 0.15},
{'column': 'NRX_TOTAL', 'severity': 3, 'threshold': 0.25},
{'column': 'TRX_TOTAL', 'severity': 3, 'threshold': 0.25}
]
def max_group_by(lst, group, value):
'''
calculatie max values by group key within dict d
'''
result = []
groups = []
for d in lst:
g = d.get(group)
if g and g not in groups:
v = d.get(value)
groups.append(g)
glist = [d2 for d2 in lst if d2.get(group) == g]
maxval = max(glist, key=lambda x: x.get(value))
result.append(maxval)
return result
print(max_group_by(a, 'column', 'severity'))
# [{'column': 'NRX_TOTAL', 'severity': 3, 'threshold': 0.25},
# {'column': 'TRX_TOTAL', 'severity': 3, 'threshold': 0.25}]
</code></pre>