파이썬 함수 사용법: 매개변수와 인수, 람다 함수

파이썬 함수 사용법: 매개변수와 인수, 람다 함수

파이썬 프로그래밍 언어에서 함수는 재사용 가능한 코드 블록입니다. 함수를 사용하면 코드를 재사용하고, 모듈화 하며, 논리를 쉽게 이해할 수 있습니다. 이번 글에서는 함수의 정의와 호출 방법, 매개변수와 인수의 개념, 기본 인자 값, 키워드 인자, 가변 인자, 그리고 람다 함수에 대해 알아보겠습니다.

함수란 무엇인가?

함수는 특정 작업을 수행하는 코드의 집합입니다. 함수를 사용하면 동일한 코드를 반복해서 작성하지 않고, 필요할 때마다 호출하여 사용할 수 있습니다. 이는 코드의 중복을 줄이고, 코드의 가독성과 유지 관리를 향상하는 데 도움이 됩니다.

파이썬에서의 함수 정의 및 호출

파이썬에서 함수를 정의하려면 def 키워드를 사용합니다. 그 뒤에 함수의 이름과 괄호 ()를 쓰고, 괄호 안에는 필요한 경우 매개변수를 적어줍니다. 그리고 콜론(:)으로 함수의 본문을 시작합니다. 함수를 호출하려면 함수 이름과 함께 괄호를 사용하고, 필요한 경우 괄호 안에 인수를 전달합니다.

def greet():    # 함수를 정의합니다.
    print("Hello, World!")

greet()  # 함수를 호출합니다.

# 실행 결과
Hello, World!

매개변수와 인수

매개변수(parameter)는 함수 정의에서 괄호 안에 선언된 변수를 의미합니다. 이 변수는 함수가 호출될 때 전달된 인수(argument)를 받습니다.

def greet(name):    # 'name'은 매개변수입니다.
    print("Hello, " + name + "!")

greet("BlueShare")  # 'BlueShare'는 인수입니다.

# 실행 결과
Hello, BlueShare!


☞ 함수를 정의할 때는 매개변수를, 함수를 호출할 때는 인수를 사용한다는 것을 기억하시면 됩니다.

기본 인자 값 (Default Arguments)

함수를 정의할 때, 매개변수에 기본 값을 할당할 수 있습니다. 이렇게 하면 함수를 호출할 때 해당 매개변수에 대한 인자를 생략할 수 있습니다. 만약 인자를 전달하면, 전달된 인자가 기본값을 덮어씁니다.

def greet(name, age=20, gender="남자"):
    print(f"안녕하세요, {name}입니다.")
    print(f"저는 {age}살이고, {gender}입니다.")

greet("BlueShare")  # age와 gender에 대한 인자를 생략했습니다.

# 실행 결과
안녕하세요, BlueShare입니다.
저는 20살이고, 남자입니다.

키워드 인자 (Keyword Arguments)

키워드 인자는 함수를 호출할 때 인자를 매개변수의 이름으로 직접 지정하는 방법입니다. 이 방법을 사용하면 인자의 순서를 바꾸거나 일부만 전달하는 것도 가능합니다.

def greet(name, age, gender):
    print(f"안녕하세요, {name}입니다.")
    print(f"저는 {age}살이고, {gender}입니다.")

greet(gender="남자", name="BlueShare", age=20)  # 인자의 순서를 바꿔서 전달했습니다.

# 실행 결과
안녕하세요, BlueShare입니다.
저는 20살이고, 남자입니다.

가변 인자 (Variable-length Arguments)

가변 인자는 함수에 임의의 개수의 인자를 전달할 수 있게 해 줍니다. 가변 인자는 매개변수 이름 앞에 별표(*)를 붙여서 정의합니다.

def greet(name, *categories):
    print(f"안녕하세요, {name}입니다.")
    print("블로그 카테고리는 다음과 같습니다.")
    for category in categories:
        print(category)

greet("BlueShare", "IT정보", "IT공부", "생활정보", "재테크")

# 실행 결과
안녕하세요, BlueShare입니다.
블로그 카테고리는 다음과 같습니다.
IT정보
IT공부
생활정보
재테크

람다 함수

람다 함수는 이름 없는 함수로, 간단한 함수를 한 줄로 표현할 수 있게 해 줍니다. lambda 키워드를 사용하여 정의하며, 한번 사용하고 버릴 수 있는 일시적인 함수를 만드는 데 유용합니다.

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

# 실행 결과
25

이 예시에서 lambda x: x**2는 입력 x를 받아 x의 제곱을 반환하는 람다 함수입니다. 이 람다 함수를 square 변수에 할당하여 나중에 사용할 수 있습니다.

참고 자료


이 글이 도움이 되셨다면 공유를 부탁 드립니다. 다음 글에서 뵙겠습니다!

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤