함수(Functions)란?
함수(Function)는 특정 작업을 수행하는 코드 블록을 의미합니다. 일반적으로 입력 값이 있고 그에 따른 결과 값을 가지게 되는데 Python에서는 def 키워드를 사용하여 함수를 정의하고 있습니다. 함수를 잘 사용할수록 코드의 재사용성 및 가독성이 향상됩니다.
함수 정의 및 호출 방법
def 함수를 사용하여 입력 값(매개변수, parameter)을 받아 함수 처리 후 결과 값(반환 값, return value)을 반환하며 코드 구조로 보면 아래와 같은 형태입니다.
함수 정의 예시
def 함수이름(매개변수1, 매개변수2, ...):
# 함수에 대한 설명
실행할 코드
return 반환값 # (선택 사항)
함수 호출 방법
함수이름(인자1, 인자2, ...)
함수 사용 예시
def greet(name):
# 사용자의 이름을 받아서 인사하는 함수
print(f"안녕하세요, {name}님!")
greet("철수")
문자열 포맷팅(f-string)
중괄호 {}는 문자열 포맷팅에서도 사용. 특히, f"" 문자열과 함께 쓰면 입력받은 변수를 삽입하는 용도
매개변수(Parameter)와 인수(Argument)
위의 함수 정의 및 호출 방법을 보면 알 수 있듯이, 함수는 입력 값을 전달받고 출력 값을 반환하는 구조입니다. 매개변수(Parameter)란 함수 정의 시 입력받는 값의 이름을 말하며, 인수(Argument)란 함수 호출 시 실제로 전달하는 값을 말합니다.
매개변수와 인수 예시
# 함수 정의: 매개변수(parameter)를 사용
def greet(name, age):
print(f"안녕하세요, {name}님! 당신은 {age}살입니다.")
# 함수 호출: 인수(argument)를 전달
greet("철수", 25)
greet("영희", 30)
더보기
안녕하세요, 철수님! 당신은 25살입니다.
안녕하세요, 영희님! 당신은 30살입니다.
반환값(Return Value)
함수 호출시 return 키워드를 통해 출력 값을 반환할 수 있습니다. return이 없는 함수의 경우 None을 반환합니다.
반환값 예시
def add_numbers(a, b):
# 두 숫자를 더한 결과를 반환하는 함수
return a + b
def greet(name):
# 이름을 받아서 환영 메시지를 반환하는 함수
return f"안녕하세요, {name}님!"
# 함수 호출 예제
result = add_numbers(3, 5)
print("더하기 결과:", result)
message = greet("철수")
print(message)
코드 실습
사용 예시 1 : 매개변수가 있는 함수
def find_max(num_list):
max_value = num_list[0]
for num in num_list:
if num > max_value:
max_value = num
return max_value
print(find_max([3, 8, 2, 9, 1]))
사용 예시 2 : 반환값이 없는 함수
def print_elements(elements):
for element in elements:
print(element)
print_elements(["사과", "바나나", "체리"])
사용 예시 3 : 기본값이 있는 매개변수
def greet(name="익명"):
print(f"안녕하세요, {name}님!")
greet()
greet("영희")
사용 예시 4 : *여러 개의 인자를 받을 때(args)
def sum_all(*numbers):
return sum(numbers)
print(sum_all(1, 2, 3, 4, 5))
사용 예시 5 : **키워드 인자를 받을 때(kwargs)
def print_info(**info):
for key, value in info.items():
print(f"{key}: {value}")
print_info(name="철수", age=25, city="서울")
더보기
name: 철수
age: 25
city: 서울
※ 이 글이 도움이 되었다면 "👆🏻구독"과 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.