Python/포스팅

파이썬 함수

짜집퍼박사(짜박) 2023. 12. 2. 23:41

파이썬에서 함수는 특정 작업을 수행하는 코드의 블록이며, 이 블록은 이름을 가지고 있어 필요할 때 호출할 수 있습니다. 함수는 코드의 재사용성을 높이고, 프로그램을 모듈화하여 관리하기 쉽게 만듭니다. 아래는 파이썬 함수에 대한 기본적인 내용입니다.

 

1. 함수 정의

def function_name(parameters):
    # 함수 내용
    return result

- def: 함수를 정의하는 키워드입니다.
- function_name: 함수의 이름입니다.
- parameters: 함수에 전달되는 매개변수(parameter)입니다.
- return: 함수가 값을 반환하는 키워드로, 생략 가능합니다.

2. 함수 호출

result = function_name(arguments)

- arguments: 함수에 전달되는 실제 값입니다.

 

3. 함수의 예제

def greet(name):
    """인사를 출력하는 함수"""
    print(f"Hello, {name}!")

# 함수 호출
greet("Alice")

위의 예제에서 greet 함수는 하나의 매개변수(name)를 받아서 해당 이름으로 인사말을 출력합니다.

 

4. 기본 매개변수(Default Parameters)

def greet(name="Guest"):
    """기본값을 가진 매개변수를 갖는 함수"""
    print(f"Hello, {name}!")
    
# 함수 호출
greet()  # 기본값 "Guest"를 사용
greet("Alice")  # 전달된 값 "Alice"를 사용

위의 예제에서 name 매개변수는 기본값으로 "Guest"를 가지며, 함수를 호출할 때 명시적으로 값을 전달하지 않으면 기본값이 사용됩니다.

 

5. 가변 인자(*args)

def add(*args):
    """가변 인자를 받아 합을 반환하는 함수"""
    return sum(args)

# 함수 호출
result = add(1, 2, 3, 4, 5)
print(result)  # 15

*args는 가변 개수의 위치 인자를 받는 매개변수입니다. 함수를 호출할 때 원하는 개수의 인자를 전달할 수 있습니다.

 

6. 키워드 인자(**kwargs)

def print_info(**kwargs):
    """키워드 인자를 출력하는 함수"""
    for key, value in kwargs.items():
        print(f"{key}: {value}")

# 함수 호출
print_info(name="Alice", age=30, city="Wonderland")

**kwargs는 가변 개수의 키워드 인자를 받는 매개변수입니다. 함수를 호출할 때 키워드와 값을 함께 전달할 수 있습니다.

 

7. 반환 값

def multiply(a, b):
    """두 수를 곱한 값을 반환하는 함수"""
    return a * b

# 함수 호출
result = multiply(2, 3)
print(result)  # 6

return 키워드를 사용하여 함수에서 값을 반환할 수 있습니다.

 

8. 도움말 문자열(Docstring)

def greet(name):
    """인사를 출력하는 함수

    Parameters:
    name (str): 인사를 받을 대상의 이름
    """
    print(f"Hello, {name}!")

함수 정의 바로 아래에 작성하는 문자열로, 함수에 대한 설명이나 도움말을 제공하는데 사용됩니다.

함수는 코드의 모듈화, 재사용성, 가독성을 높이는데 기여하며, 파이썬에서는 함수가 일급 객체로 취급되기 때문에 함수를 다른 함수의 매개변수로 전달하거나 함수의 반환값으로 사용할 수 있습니다.

 

With ChatGPT