이번 글에서는 파이썬의 sort 메소드를 주로 소개하는데, 필요하신 분들은 참고하시면 됩니다.
파이썬의 sort() 메소드는 배열 정렬에 사용됩니다. 예:
1. 기본 형식
목록에는 내부 정렬이므로 튜플이 분명합니다. 튜플 그룹을 수정할 수 없기 때문에 이 메서드를 사용할 수 없습니다.
x = [4, 6, 2, 1, 7, 9] x.sort() print x # [1, 2, 4, 6, 7, 9]
원본 목록을 변경하지 않고 정렬된 복사본이 필요한 경우 어떻게 얻을 수 있나요?
x =[4, 6, 2, 1, 7, 9] y = x[ : ] y.sort() print y #[1, 2, 4, 6, 7, 9] print x #[4, 6, 2, 1, 7, 9]
참고: y = x[:] 모든 요소를 샤딩하여 목록을 분할합니다. x가 y에 복사됩니다. x가 단순히 y에 할당된 경우: y = x, y와 x는 여전히 동일한 목록을 가리키며 새 복사본이 생성되지 않습니다 .
정렬된 목록의 복사본을 얻는 또 다른 방법은 sorted 함수를 사용하는 것입니다.
x =[4, 6, 2, 1, 7, 9] y = sorted(x) print y #[1, 2, 4, 6, 7, 9] print x #[4, 6, 2, 1, 7, 9]
sorted는 정렬된 복사본을 반환하며 유형은 항상 목록입니다.
print sorted('Python') #['P', 'h', 'n', 'o', 't', 'y']
2. 사용자 정의 비교 함수
자신만의 비교 함수를 정의한 후 매개변수를 통해 정렬 메소드에 전달할 수 있습니다.
def comp(x, y): if x < y: return 1 elif x > y: return -1 else: return 0 nums = [3, 2, 8 ,0 , 1] nums.sort(comp) print nums # 降序排序[8, 3, 2, 1, 0] nums.sort(cmp) # 调用内建函数cmp ,升序排序 print nums # 降序排序[0, 1, 2, 3, 8]
3. 선택적 매개변수
정렬 방법에는 key 및 reverse
라는 두 가지 선택적 매개변수도 있습니다. 핵심은 이를 사용할 때 정렬 프로세스에서 호출되는 함수를 제공해야 합니다:
x = ['mmm', 'mm', 'mm', 'm' ] x.sort(key = len) print x # ['m', 'mm', 'mm', 'mmm']
2. 내림차순으로 반전하려면 부울 값을 제공해야 합니다:
y = [3, 2, 8 ,0 , 1] y.sort(reverse = True) print y #[8, 3, 2, 1, 0]
[관련 추천]
1 . Python에서 sort() 사용법에 대한 자세한 설명
values() 사용에 대한 튜토리얼에 대한 자세한 설명 Python
3. pandas DataFrame의 sort_values isin 사용 예
위 내용은 Python에서 정렬을 사용하는 방법의 예 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!