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

Python – 대소문자 차이로 문자열 정렬

<시간/>

대소문자를 구분하여 문자열을 정렬해야 하는 경우 문자열을 매개변수로 사용하는 메서드를 정의합니다. 이 방법은 목록 이해와 'isupper' 및 'islower' 방법을 목록 이해와 함께 사용하여 대소문자 차이를 구합니다. 이들의 차이는 정렬된 값을 제공합니다.

예시

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

def get_diff(my_string):

   lower_count = len([ele for ele in my_string if ele.islower()])
   upper_count = len([ele for ele in my_string if ele.isupper()])
   return abs(lower_count - upper_count)

my_list = ["Abc", "Python", "best", "hello", "coders"]

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

my_list.sort(key=get_diff)

print("Sorted Strings by case difference :")
print(my_list)

출력

The list is :
['Abc', 'Python', 'best', ‘hello’, 'coders']
Sorted Strings by case difference :
['Abc', 'Python', 'best', 'coders', ‘hello’]

설명

  • 문자열 목록을 매개변수로 사용하는 'get_diff'라는 메서드가 정의되어 있습니다.

  • 목록 이해와 'islower' 및 'isupper' 메서드는 문자열이 대문자인지 소문자인지 확인하는 데 사용됩니다.

  • 이 값은 두 개의 다른 변수에 저장됩니다.

  • 이 두 변수의 절대 차이가 출력으로 반환됩니다.

  • 메소드 외부에서 목록이 정의되고 콘솔에 표시됩니다.

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

  • 콘솔에 표시되는 출력입니다.