max에서 key를 사용하는 주된 목적은 index(key)와 value 짝의 튜플형태로 이루어진 리스트에서 key와 value 중에 어떤것을 기준으로 max값을 구할지 선택하기위한 목적으로 많이 활용된다.
🔥 max의 key : 함수로 구현되어있고, lambda함수로 작성해도 상관없다.
#예 :
arr = [(0,10),(1,14),(2,2),(3,24)]
str = max(arr,key = lambda x:x[1])
'''
arr리스트의 각 원소가 순서대로 lambda함수의 입력x로 들어가고 x[0]은 각 원소tuple의
첫번째값을 의미하는것이고 x[1]은 각원소tuple의 2번째값을 의미한다.
예: 위 arr리스트에서 첫번째값인 (0,10)원소에서 x[0]=0 ,x[1]=10이 된다.
결국, 이 예제에서는 'x[1]이 제일 큰 원소를 찾겠다' 라는 의미이고, str에서는
24가 제일 크므로 (3,24)의 원소가 담긴다.
'''
print(str)
#print결과값=> (3,24)
#예 :
str2 = max ((0,40),(1,20),(2,42),(3,100),key = lambda x:x[1])
print(str2)
#print결과값=> (3,100)
str3 = max(4,100,120,50,11,key = lambda x:x)
print(str3)
#print결과값=> 120
잘 읽었습니다! 리턴값이 함수가 적용된 값이 리턴된게 아니라 item이 그대로 리턴되는군요!