본문 바로가기

프로그래밍언어/Python

파이썬- 배열 & 메소드(데이터 정렬하기) 2


파이썬(python) 배열은 많은 일들을 쉽게 할 수 있도록 메소드를 내장하고 있다.

메소드 메소드가 하는 일
count() 배열 안에 특정한 값이 몇 개 있는지 알려줌
extend() 일련의 항목들을 배열에 추가
index() 항목을 검색하고 해당 인덱스를 반환
insert() 지정한 인덱스 위치에 항목을 추가
pop() 배열을 지정한순서(낮은 것부터 높은 순으로)로 정렬
remove() 배열의 첫 번째 항목을 제거하고 반환
reverse() 배열 항목들의 순서를 반대로 만듦
sort() 배열을 지정한 순서(낮은 것부터 높은 순으로)로 정렬


sort() 와 reverse 두 메소드를 사용하면 된다. sort()는 기본적으로 낮은 것부터 높은 순으로 정렬하므로 우리가 원하는 순서의 정반대이다.
그러므로 데이터를 sort()하고 나서 reverse() 하면 된다.


높은 점수로부터 낮은 점수 순으로 정렬하기
scores = []
result_f = open("c://results.txt")
for line in result_f:
(nane, score) = line.split()
scores.append(float(score))
result_f.close() // 여기까지 실행되면 모든 데이터가 메모리 배열에 있게된다. 그러나 정렬되어 있지는 않음.
scores.sort()
scores.reverse()
// 두 메소드를 호출하면 데이너틑 우리가 필요로 하는 순서대로 정렬된다.
print("The highest score was:")
print(scores[0]) // 배열이 정렬되어 있으므로 처음 세 항목이 상위 3위를 나타내게 된다.
print(scores[1])
print(scores[3])



출처 : http://ygang.tistory.com/21