Find Maximum List Value Based on Function

Beginner

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

Introduction

In Python, we can use the max() function to find the maximum value in a list. However, what if we want to find the maximum value after mapping each element to a value using a provided function? In this challenge, you will need to write a function that takes a list and a function as arguments, maps each element to a value using the provided function, and returns the maximum value.

Find Maximum List Value Based on Function

Write a function max_by(lst, fn) that takes a list lst and a function fn as arguments. The function should map each element in lst to a value using the provided function fn, and then return the maximum value.

def max_by(lst, fn):
  return max(map(fn, lst))
max_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) ## 8

Summary

In this challenge, you have learned how to find the maximum value in a list after mapping each element to a value using a provided function. You have written a function max_by(lst, fn) that takes a list and a function as arguments, maps each element to a value using the provided function, and returns the maximum value.