>백엔드 개발 >파이썬 튜토리얼 >Python에서 정렬을 사용하는 방법의 예 공유

Python에서 정렬을 사용하는 방법의 예 공유

零下一度
零下一度원래의
2017-05-25 11:12:222106검색

이번 글에서는 파이썬의 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 = [&#39;mmm&#39;, &#39;mm&#39;, &#39;mm&#39;, &#39;m&#39; ]
x.sort(key = len)
print x # [&#39;m&#39;, &#39;mm&#39;, &#39;mm&#39;, &#39;mmm&#39;]

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.