Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

문장의 단어를 오름차순으로 정렬하는 Python 프로그램


문장의 단어를 오름차순으로 정렬하려면 먼저 공백을 분할점으로 사용하여 문장을 단어로 분할해야 합니다. 간단하게 하기 위해 공백만 분할하고 구두점은 그대로 두겠습니다. 이것을 제거하기 위해 replace 또는 regex를 사용할 수도 있습니다.

문장을 분할하고 나면 배열을 제자리에 정렬할지 아니면 정렬할지에 따라 sort 또는 sorted 방법을 사용하여 사전순으로 단어를 정렬할 수 있습니다(예:언어 사전).

제자리 정렬:배열/목록을 제자리에서 정렬하려는 경우, 즉 현재 구조 자체의 순서를 변경하려는 경우 정렬 방법을 직접 사용할 수 있습니다. 예를 들어,

예시

sent ="메리는 매우 아름다운 개가 있습니다."my_arr =sent.split(" ")print(my_arr)my_arr.sort()print(my_arr)

이것은 출력을 줄 것입니다 -

<미리>['메리', '있다', '아', '매우', '아름다운', '개']['아', '아름다운', '개', '있다', '메리', ' 아주']

여기에서 볼 수 있듯이 원래 배열인 my_arr이 수정되었습니다. 이 배열을 그대로 유지하고 정렬 시 새로운 배열을 생성하고 싶다면 sorted 메소드를 사용하면 됩니다. 예를 들어,

sent ="mary는 매우 아름다운 강아지를 가지고 있습니다.# Split on space.my_arr =sent.split(" ")print(my_arr)# 정렬된 방법을 사용하여 새 배열 생성new_arr =sorted(my_arr)print(new_arr)# 이번에는 my_arr이 제자리에서 변경되지 않고 정렬됩니다.# 새 인스턴스가 new_arrprint(my_arr)
에 할당됩니다.

출력

이것은 출력을 줄 것입니다 -

<미리>['메리', '있다', '아', '매우', '아름다운', '개']['아', '아름다운', '개', '있다', '메리', ' 매우']['메리', '있다', '아', '매우', '아름다운', '개']

여기에서 볼 수 있듯이 원래 배열은 변경되지 않았습니다.