Trouver le minimum par attribut en Python

Beginner

This tutorial is from open-source community. Access the source code

Introduction

En Python, vous pouvez utiliser la fonction min() pour trouver la valeur minimale d'une liste. Cependant, que faire si vous voulez trouver la valeur minimale d'une liste en fonction d'une propriété ou d'un attribut spécifique de chaque élément de la liste? C'est là que la fonction min_by() s'avère pratique.

Trouver la valeur minimale d'une liste en fonction d'une fonction

Écrivez une fonction appelée min_by(lst, fn) qui prend une liste lst et une fonction fn en arguments. La fonction devrait mapper chaque élément de la liste à une valeur en utilisant la fonction fournie, puis retourner la valeur minimale.

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

Résumé

Dans ce défi, vous avez appris à trouver la valeur minimale d'une liste en fonction d'une propriété ou d'un attribut spécifique de chaque élément de la liste en utilisant la fonction min_by(). Cette fonction map chaque élément de la liste à une valeur en utilisant une fonction fournie, puis retourne la valeur minimale.