[PYTHON] 중첩 목록의 두 번째 열에서 최대 값 찾기?
PYTHON중첩 목록의 두 번째 열에서 최대 값 찾기?
다음과 같은 목록이 있습니다.
alkaline_earth_values = [['beryllium', 4], ['magnesium', 12],['calcium', 20],
['strontium', 38], ['barium', 56], ['radium', 88]]
만약 내가 max (list) 메쏘드를 단순히 사용한다면, 최대의 이름을 찾으려고한다면 'strontium'이라는 답을 얻을 것이다. 그러나 정수가 가장 높은 원소를 반환하려고한다.
해결법
-
==============================
1.
max(alkaline_earth_values, key=lambda x: x[1])
max 함수의 key 인수는 max가 최대 요소가 검색 될 값을 알고 자 할 때 호출되는 함수를 지정하기 때문에이 함수가 작동하는 이유입니다. max는 시퀀스의 각 요소에 대해 해당 함수를 호출합니다. 그리고 lambda x : x [1]은리스트를 취하여 첫 번째 (계수가 0부터 시작) 요소를 반환하는 작은 함수를 만듭니다. 그래서
k = lambda x: x[1]
말하는 것과 같다.
def k(l): return l[1]
그러나 이와 같은 상황에서 사용하기에는 짧고 좋습니다.
-
==============================
2.key 인수를 사용하십시오.
key 인수를 사용하십시오.
max(alk..., key=operator.itemgetter(1))
from https://stackoverflow.com/questions/4800419/finding-max-value-in-the-second-column-of-a-nested-list by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬으로 작성된 프로그램을 컴파일 할 수 있습니까? [닫은] (0) | 2018.11.05 |
---|---|
[PYTHON] 자기 .__ dict __. 업데이트 (** kwargs) 좋은 스타일이나 가난한 스타일? (0) | 2018.11.05 |
[PYTHON] 공백으로 구분 된 값으로 파일을 읽는 방법 (0) | 2018.11.05 |
[PYTHON] 파이썬 스트립 \ n [중복] (0) | 2018.11.05 |
[PYTHON] Python의 isinstance ()를 사용하여 변수가 숫자인지 제대로 확인하는 방법은 무엇입니까? (0) | 2018.11.04 |