관리 메뉴

물 만날 물고기

[python] 리스트 값을 순서(등수)로 바꾸고 싶을 때 본문

Python

[python] 리스트 값을 순서(등수)로 바꾸고 싶을 때

Lung Fish 2023. 2. 1. 07:43

🔍 예상 검색어

더보기

# 파이썬 리스트 등수로 바꾸기

# 파이썬 리스트 순서값으로 바꾸기

# 파이썬 등수 만들기

# 파이썬 등수 구하기

# 파이썬 순서 구하기


해당 포스팅은 리스트 값을 순서(등수)로 바꾸고 싶을 때 사용하는 방법에 대한 내용을 정리하였습니다. 아래 방법이 반드시 절대적인 것이 아니며, 그저 여러 방법 중 한가지 라는 것으로 참고하시기 바랍니다.

▽ 문제

score = [ 57, 71, 88, 91, 97 ] 인 리스트가 있는데, 이 값을 점수가 높은 순서대로 [5, 2, 4, 3, 1]와 같이 순서(등수)가 있는 리스트로 만들고 싶을 때는 어떻게 해야하나요?

# Before
score = [57, 91, 71, 88, 97]

# After 
rank  = [5, 2, 4, 3, 1]


▼ 정답

score = [57, 91, 71, 88, 97]
sorted_score = sorted(score, reverse = True)# 점수가 높은순으로 reverse = True (내림차순) 정렬
ranks = [sorted_score.index(s) + 1 for s in score] # 등수는 1부터 시작되니까 + 1 넣어줌
print(ranks)

>>> 출력결과
[5, 2, 4, 3, 1]


▼ 추가 (리스트에 중복 된 값이 있다면 어떻게 출력될까?)

score = [57, 91, 71, 88, 97, 71] # 71이 2개
sorted_score = sorted(score, reverse = True) 
ranks = [sorted_score.index(s) + 1 for s in score]
print(ranks)

>>> 출력결과
[6, 2, 4, 3, 1, 4]


※ sorted() 함수의 reverse 인자 True, False의 차이가 궁금할 때는 아래 포스팅을 참고하시기 바랍니다.

[python] sorted() 함수에서 reverse = True, False 의 차이

🔍 예상 검색어 더보기 # 파이썬 sorted()함수 reverse 옵션 # 파이썬 sorted()함수 reverse=True, reverse=False 차이 # 파이썬 리스트 정렬 # 파이썬 정렬 오름차순 내림차순 # 파이썬 ascending descending order 해당

lungfish.tistory.com


# 참고자료

No. 내용 비고
1 python 크기 순서대로 번호 매기기 - 너는 몇번째로 큼?.? Gomming's Something new!!
2 [3차] 문제1) 학생의 등수 구하기 - Python3 Data Story
3 파이썬 리스트 활용2(sort,sorted,순위,reverse,slicing,append, insert,pop,remove,index,count) lec15 : 네이버 블로그 달려라 고고 핑복