포스트

파이썬의 숨겨진 기능들

List Comprehension (리스트 컴프리헨션)

리스트 컴프리헨션은 리스트를 간단하고 빠르게 생성할 수 있는 파이썬의 특별한 기능입니다. 기본적인 for 문보다 간결하게 코드를 작성할 수 있습니다. 예를 들어, 0부터 9까지의 제곱수를 구하는 코드를 살펴봅시다.

일반적인 방법

1
2
3
squares = []
for i in range(10):
    squares.append(i*i)

리스트 컴프리헨션 사용

1
squares = [i*i for i in range(10)]

두 코드는 동일한 결과를 생성하지만, 리스트 컴프리헨션을 사용하는 것이 훨씬 간결하다는 것을 알 수 있습니다.

Lambda 함수

람다 함수는 이름 없는 함수를 생성하는 간단한 방법입니다. 주로 다른 함수의 인자로 사용되거나, 간단한 연산을 수행할 때 사용됩니다.

1
2
add = lambda x, y: x + y
print(add(5, 3))  # 출력: 8

Generator Expressions (제너레이터 표현식)

리스트 컴프리헨션과 유사하게, 제너레이터 표현식을 사용하면 메모리를 효율적으로 사용할 수 있습니다. 이는 대용량 데이터를 처리할 때 유용합니다.

1
squares = (i*i for i in range(10))

Decorators (데코레이터)

데코레이터는 함수나 메서드의 기능을 수정하지 않고 추가적인 기능을 부여할 수 있습니다. 로깅, 권한 검사 등 다양한 곳에서 사용됩니다.

1
2
3
4
5
6
7
8
9
10
11
12
def my_decorator(func):
    def wrapper():
        print("Something is happening before the function is called.")
        func()
        print("Something is happening after the function is called.")
    return wrapper

@my_decorator
def say_hello():
    print("Hello!")

say_hello()

이러한 숨겨진 기능들은 파이썬을 더욱 강력하고 유용하게 만듭니다. 각 기능을 이해하고 적절히 활용하면, 효율적이고 간결한 코드를 작성할 수 있습니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.