[Python] - 객체 정렬, 등수 표현, 객체 정렬 문제 풀이 (정보 정렬, 좌표 거리, 정렬된 위치 탐색)
1. 객체 정렬 시 등수 표현 - 국어, 수학, 영어 점수를 가진 학생 정보가 주어진다. - 총합이 높은 순서로 정렬할 때, 1등부터 n 등까지 등수에 해당하는 학생의 번호를 출력한다. - 총합에 따라 내림차순 정렬이 되면서 학생의 번호도 같이 움직인다. - 정렬 후 등수에 해당하는 번호를 출력한다. - 객체에 학생 번호에 해당하는 멤버 변수를 추가한다. - 등수별 학생의 번호를 출력하기 위해 index를 출력하는 enumerate 함수를 사용한다. - start 값으로 시작 index 값을 설정할 수 있다. Class 이용 class Student: def __init__(self, kor, math, eng, num): self.kor = kor self.math = math self.eng = en..
2023. 9. 22.
[Python] 우선 순위 객체 정렬, 다양한 조건의 객체 정렬 - class, tuple, lambda, cmp_to_key
1. 우선순위 객체 정렬 1-1. 클래스를 이용한 객체 정렬 - 학생들의 국어, 수학, 영어 점수가 있을 때, 수학 점수를 기준으로 오름차순으로 정렬한다. - 만약 수학 점수가 같다면, 국어 점수를 기준으로 오름차순으로 정렬한다. - 이처럼 우선순위를 갖는 경우에는 lambda 함수의 반환값을 tuple 값으로 정의해준다. print((3,5)>(2,8)) print((3,5)>(3,7)) print((3,5)>(4,2)) True False False - 위와 같이 tuple끼리 비교하면 첫 번째 값을 기준으로 먼저 비교한다. - 첫 번째 값이 동일하다면 두 번째 값을 기준으로 비교를 한다. - 값이 2개뿐만 아니라 여러 개일 때도 마찬가지이다. class Student: def __init__(sel..
2023. 9. 14.
[Python] 정렬 - 숫자, 문자열, 문자열 리스트, 오름차순 및 내림차순
1. 숫자 - sort() : 리스트의 원소를 오름차순으로 정렬한다. arr=[15,64,32,78,36,98,22] arr.sort() print(arr) 결과 [15, 22, 32, 36, 64, 78, 98] - 내림차순으로 정렬 : sort(reverse=True) arr=[15,64,32,78,36,98,22] arr.sort(reverse=True) print(arr) 결과 [98, 78, 64, 36, 32, 22, 15] - sorted() : 정렬된 리스트를 반환한다. - 정렬 후의 리스트를 변수에 할당해야 한다. arr=[15,64,32,78,36,98,22] sort_arr=sorted(arr) print(sort_arr) 결과 [15, 22, 32, 36, 64, 78, 98] - ..
2023. 1. 29.