‘defining functions with def’ 기본 개념 이해하기
기본 문법 및 구조
파이썬에서 함수를 정의하기 위해서는 def
키워드를 사용합니다. 함수는 특정 작업을 수행하는 코드 블록을 정의하고, 필요할 때마다 호출하여 실행할 수 있습니다. 기본적인 함수 정의 문법은 다음과 같습니다:
def 함수이름(매개변수1, 매개변수2):
# 함수 본문
return 결과값
함수 이름은 함수의 목적을 잘 나타낼 수 있는 식별자를 사용해야 하며, 필요에 따라 매개변수를 정의할 수 있습니다. 함수 본문은 들여쓰기를 통해 구분되며, 필요에 따라 return
문을 사용하여 결과값을 반환할 수 있습니다.
실용적인 활용 예제
예제 1
첫 번째 예제로, 두 숫자의 합을 계산하는 간단한 함수를 만들어 보겠습니다:
def add_numbers(a, b):
return a + b
result = add_numbers(3, 5)
print(result) # 출력: 8
이 예제에서는 add_numbers
라는 함수를 정의하여 두 매개변수 a
와 b
를 더한 결과를 반환하도록 했습니다. add_numbers(3, 5)
를 호출하면 8이 출력됩니다.
예제 2
두 번째 예제로, 리스트의 모든 요소를 제곱하여 새로운 리스트를 반환하는 함수를 만들어 보겠습니다:
def square_numbers(numbers):
squared = [n ** 2 for n in numbers]
return squared
num_list = [1, 2, 3, 4]
squared_list = square_numbers(num_list)
print(squared_list) # 출력: [1, 4, 9, 16]
이 함수는 리스트 내포를 사용하여 각 요소를 제곱한 후 새로운 리스트를 반환합니다. square_numbers(num_list)
를 호출하면 [1, 4, 9, 16]
이 출력됩니다.
주의사항 및 팁
흔히 하는 실수
초보자들이 자주 겪는 실수 중 하나는 함수가 반환값을 갖지 않는 경우입니다. 함수가 특정 값을 반환하도록 설계되었지만 return
문을 누락하면 None
을 반환하게 됩니다. 또한, 함수 호출 시 매개변수를 잘못 전달하거나 순서를 혼동하는 경우도 흔합니다.
알아두면 좋은 팁
함수를 정의할 때는 가급적 명확하고 직관적인 이름을 사용하세요. 또한, 함수가 너무 많은 역할을 하지 않도록 주의하고, 가능하면 한 가지 작업만 수행하도록 설계하는 것이 좋습니다. 이렇게 하면 코드의 가독성을 높이고 유지보수를 쉽게 할 수 있습니다.