30秒学会 Python 片段 · 2019年2月21日

30秒学会 Python 片段 – min_by

Returns the minimum value of a list, after mapping each element to a value using the provided function.

Use map() with fn to map each element to a value using the provided function, use min() to return the minimum value.

代码实现

def min_by(lst, fn):
  return min(map(fn, lst))

使用样例

min_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) # 2