ints, float, string, chars 또는 __cmp__ 메서드를 구현한 기타 클래스 목록을 정렬하려면 목록에서 sort를 호출하기만 하면 정렬할 수 있습니다. 목록을 역순(내림차순)으로 정렬하려면 reverse 매개변수도 전달하면 됩니다.
예시
my_list = [1, 5, 2, 6, 0] my_list.sort() print(my_list) my_list.sort(reverse=True) print(my_list)
출력
이것은 출력을 제공합니다 -
[0, 1, 2, 5, 6] [6, 5, 2, 1, 0]
튜플은 변경할 수 없으므로 직접 호출할 수 있는 내부 정렬 기능이 없습니다. 정렬된 목록을 반환하는 sorted 함수를 사용해야 합니다. 목록을 제자리에 정렬하지 않으려면 목록 클래스 메소드 sort 대신 sorted를 사용하십시오.
예시
my_list = [1, 5, 2, 6, 0] print(sorted(my_list)) print(sorted(my_list, reverse=True))
출력
이것은 출력을 줄 것입니다 -
[0, 1, 2, 5, 6] [6, 5, 2, 1, 0]
클래스에 구현된 __cmp__ 메서드가 없는 개체 목록이 있는 경우 키 인수를 사용하여 두 요소를 비교하는 방법을 지정할 수 있습니다. 예를 들어 목록에 사전이 있고 키 크기를 기준으로 사전을 정렬하려는 경우 다음을 수행할 수 있습니다.
예시
def get_my_key(obj): return obj['size'] my_list = [{'name': "foo", 'size': 5}, {'name': "bar", 'size': 3}, {'name': "baz", 'size': 7}] my_list.sort(key=get_my_key) print(my_list)
출력
이것은 출력을 줄 것입니다 -
[{'name': 'bar', 'size': 3}, {'name': 'foo', 'size': 5}, {'name': 'baz', 'size': 7}]
각 항목에 대해 지정된 함수를 호출하고 각 항목에 대해 이 값을 기반으로 정렬합니다. 또한 개체의 속성을 반환하여 개체에 대해 동일한 기능을 지정할 수도 있습니다.