MoonNote

반응형
     

 

 

함수(Functions)란?

 함수(Function)는 특정 작업을 수행하는 코드 블록을 의미합니다. 일반적으로 입력 값이 있고 그에 따른 결과 값을 가지게 되는데 Python에서는 def 키워드를 사용하여 함수를 정의하고 있습니다. 함수를 잘 사용할수록 코드의 재사용성 및 가독성이 향상됩니다.

 

함수 정의 및 호출 방법

 def 함수를 사용하여 입력 값(매개변수, parameter)을 받아 함수 처리 후 결과 값(반환 값, return value)을 반환하며 코드 구조로 보면 아래와 같은 형태입니다.

함수 정의 예시

def 함수이름(매개변수1, 매개변수2, ...):
    # 함수에 대한 설명
    실행할 코드
    return 반환값  # (선택 사항)

함수 호출 방법

함수이름(인자1, 인자2, ...)

함수 사용 예시

def greet(name):
    # 사용자의 이름을 받아서 인사하는 함수
    print(f"안녕하세요, {name}님!")

greet("철수")

 

더보기

안녕하세요, 철수님!

 

 

TIP
 
 

문자열 포맷팅(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)

 

더보기

더하기 결과: 8
안녕하세요, 철수님!

 

코드 실습

사용 예시 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))

 

더보기

15 

 

사용 예시 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: 서울

 

 

 

 

 

 

 

 

 

 

※ 이 글이 도움이 되었다면 "👆🏻구독"과 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band