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

Python – 문자열의 숫자 부분을 기준으로 주어진 문자열 목록 정렬

<시간/>

문자열의 숫자 부분을 기준으로 주어진 문자열 목록을 정렬해야 하는 경우 정규식, 'map' 메서드 및 'list' 메서드를 사용하여 결과를 표시하는 메서드를 정의합니다.

예시

아래는 동일한 데모입니다 -

import re
print("The regular expression package has been imported successfully.")

def my_digit_sort(my_list):
   return list(map(int, re.findall(r'\d+', my_list)))[0]

my_list = ["pyt23hon", "fu30n", "lea14rn", 'co00l', 'ob8uje3345t']

print("The list is : " )
print(my_list)

my_list.sort(key=my_digit_sort)
print("The list has been sorted based on the pre-defined method..")

print("The resultant list is : ")
print(my_list)

출력

The regular expression package has been imported successfully.
The list is :
['pyt23hon', 'fu30n', 'lea14rn', 'co00l', 'ob8uje3345t']
The list has been sorted based on the pre-defined method..
The resultant list is :
['co00l', 'ob8uje3345t', 'lea14rn', 'pyt23hon', 'fu30n']

설명

  • 필요한 패키지를 환경으로 가져옵니다.

  • 'my_digit_sort'라는 메서드가 정의되어 있으며 목록을 매개변수로 사용합니다.

  • 정규식과 're' 패키지의 'findall' 메서드를 사용하여 단어 안에 있는 숫자를 찾습니다.

  • 이것은 목록의 모든 요소에 매핑됩니다.

  • 이것은 목록으로 변환되어 출력으로 반환됩니다.

  • 메서드 외부에서 정수를 포함하는 문자열 목록이 정의되고 콘솔에 표시됩니다.

  • 이 목록은 미리 정의된 방법에 따라 정렬됩니다.

  • 이 출력은 콘솔에 표시됩니다.