[파이썬] lambda 함수와 sorted() 함수

Python 프로그래밍 언어는 다양한 내장 함수들을 제공합니다. 그 중에서도 lambda 함수와 sorted() 함수는 많이 사용되는 함수들 중 하나입니다. 이 블로그에서는 lambda 함수와 sorted() 함수에 대해 알아보고 예제 코드를 통해 자세히 살펴보겠습니다.

lambda 함수

lambda 함수는 익명 함수로서, 한 줄로 간결하게 함수를 정의하는 방법입니다. 일반 함수와는 달리 함수 이름을 지정하지 않고, lambda 키워드를 사용하여 간단히 함수의 입력 변수 및 반환 값을 정의합니다.

lambda arguments: expression

예를 들어, 다음은 lambda 함수를 사용하여 입력된 숫자의 제곱 값을 반환하는 예제입니다.

square = lambda x: x**2
print(square(5))  # 출력: 25

lambda 함수를 사용하면 코드를 간결하게 작성할 수 있으며, 일반적으로 간단한 연산이나 필터링 작업 등에 많이 활용됩니다.

sorted() 함수

sorted() 함수는 시퀀스(리스트, 튜플)나 이터러블 객체를 정렬하는 함수입니다. 입력으로 받은 객체를 정렬한 새로운 리스트를 반환합니다.

sorted(iterable, key=None, reverse=False)

iterable은 정렬하고자 하는 시퀀스나 이터러블 객체를 의미하며, key는 정렬 기준을 나타내는 함수를 선택적으로 지정할 수 있습니다. reverse는 정렬 순서를 반대로 지정하는 매개변수로 기본값은 False입니다.

예를 들어, 다음은 sorted() 함수를 사용하여 리스트를 오름차순으로 정렬하는 예제입니다.

numbers = [3, 1, 4, 2, 5]
sorted_numbers = sorted(numbers)
print(sorted_numbers)  # 출력: [1, 2, 3, 4, 5]

key 매개변수를 사용하여 정렬을 기준으로 선택하는 기능도 제공됩니다. 예를 들어, 다음은 문자열의 길이를 기준으로 리스트를 정렬하는 예제입니다.

names = ['Alice', 'Bob', 'Charlie', 'Dave']
sorted_names = sorted(names, key=lambda x: len(x))
print(sorted_names)  # 출력: ['Bob', 'Dave', 'Alice', 'Charlie']

sorted() 함수를 사용하면 다양한 자료형에 대한 정렬 작업을 간편하게 수행할 수 있습니다.

마무리

이 블로그에서는 lambda 함수와 sorted() 함수의 기본 개념과 사용법에 대해 알아보았습니다. lambda 함수를 사용하면 간결하고 효율적인 코드 작성이 가능하며, sorted() 함수를 사용하면 다양한 자료형의 정렬 작업을 손쉽게 수행할 수 있습니다. 이러한 내장 함수들은 파이썬 프로그래밍 시 유용하게 활용될 수 있습니다.