반응형
문제:
총 8번의 경기를 했고 경기마다 가장 많은 골을 넣은 사람의 이름과 골을 한개의 객체로 배열에 값을 저장했다.
이때 중복되는 선수 이름은 제거하고 선수의 이름과 가장 높은 골의 수만 남기십시오 (오름차순 정렬).
player_goal = [
{"name":"철수","goal":3},{"name":"민수","goal":5},{"name":"철수","goal":2},
{"name":"지훈","goal":7},{"name":"민수","goal":2},{"name":"민호","goal":1},
{"name":"지훈","goal":11},{"name":"민수","goal":3}
]
result = []
for pg in player_goal:
check = 0
for i in result:
if i['name'] == pg['name']:
check = 1
if i['goal'] < pg['goal']:
result.append(pg)
result.remove(i)
else:
pass
if check == 0:
result.append(pg)
result = sorted(result, key=lambda e: (e['goal']))
# result = sorted(result, key=lambda e: (-e['goal'])) 내림차순
result
반응형
'개발 > Python' 카테고리의 다른 글
AttributeError: 'str' object has no attribute 'decode' (0) | 2021.12.16 |
---|---|
Pycharm에서 vscode keymap 사용하기 (0) | 2021.08.29 |
판다스 (0) | 2021.02.27 |
Jupyter notebook kernel 등록 (0) | 2021.02.02 |