반응형
함수
하나의 작업을 수행하기 위해 독립적으로 설계된 코드 블록입니다.
함수는 재사용 가능하며, 코드를 더 깔끔하고 모듈화된 방식으로 작성할 수 있게 해줍니다.
Python에서 함수는 def 키워드를 사용하여 정의됩니다
- 함수는 코드를 재사용 가능하게 하고, 프로그램을 모듈화하여 가독성을 높입니다.
- 함수는 def 키워드를 사용하여 정의되며, 필요에 따라 매개변수와 반환값을 가질 수 있습니다.
- 기본값을 가진 매개변수, 가변 인수, 그리고 여러 값을 반환하는 등의 다양한 기능을 지원합니다.
- Docstring을 통해 함수의 목적과 사용 방법을 설명할 수 있습니다.
형식 )
def 함수이름(매개변수들):
"""Docstring: 함수 설명"""
실행할 코드
return 반환값
- def: 함수를 정의하기 위해 사용되는 키워드입니다.
- 함수이름: 함수의 이름으로, 함수를 호출할 때 사용됩니다.
- 매개변수: 함수에 전달될 값(인수)을 받는 변수입니다. 함수가 매개변수를 필요로 하지 않으면 생략할 수 있습니다.
- return: 함수가 작업을 마친 후 결과값을 반환할 때 사용됩니다. 반환할 값이 없으면 생략할 수 있습니다.
1. 매개변수와 반환값이 없는 함수
def greet():
print("Hello, World!")
greet() # 출력: Hello, World!
2. 매개변수가 있는 함수
def greet(name):
print(f"Hello, {name}!")
greet("Alice") # 출력: Hello, Alice!
greet("Bob") # 출력: Hello, Bob!
3. 반환값이 있는 함수
def add(a, b):
return a + b
result = add(5, 3)
print(result) # 출력: 8
두 개의 매개변수 a와 b를 더한 값을 반환합니다. 반환된 값은 result 변수에 저장된 후 출력됩니다.
4. 기본값을 가진 매개변수
def greet(name="Guest"):
print(f"Hello, {name}!")
greet() # 출력: Hello, Guest!
greet("Alice") # 출력: Hello, Alice!
name의 기본값은 "Guest"로 설정되어 있으며, 호출 시 인수를 제공하지 않으면 기본값이 사용됩니다.
5. 여러 값을 반환하는 함수
def get_user_info():
name = "Alice"
age = 25
return name, age
user_name, user_age = get_user_info()
print(user_name) # 출력: Alice
print(user_age) # 출력: 25
6. 가변 인수 함수
가변 인수를 사용하여 함수에 전달되는 인수의 개수를 유연하게 처리할 수 있습니다. 가변 인수는 *args로 사용되며, 이때 함수는 여러 개의 인수를 튜플로 받을 수 있습니다.
def add_numbers(*args):
return sum(args)
print(add_numbers(1, 2, 3)) # 출력: 6
print(add_numbers(10, 20)) # 출력: 30
7. 키워드 가변 인수 함수
kwargs를 사용하면 가변 키워드 인수를 받을 수 있습니다. 이때 인수들은 딕셔너리로 전달됩니다.
def print_user_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
print_user_info(name="Alice", age=25, city="New York")
# 출력:
# name: Alice
# age: 25
# city: New York
8. Docstring (함수 설명문)
함수 내에 함수의 목적과 사용 방법을 설명하는 Docstring을 추가할 수 있습니다. 이는 함수가 무엇을 하는지 설명하며, help() 함수를 통해 함수에 대한 정보를 확인할 때 유용합니다.
def add(a, b):
"""
두 수를 더한 값을 반환하는 함수입니다.
매개변수:
a (int): 첫 번째 숫자
b (int): 두 번째 숫자
반환값:
int: 두 숫자의 합
"""
return a + b
print(help(add)) # 함수 설명을 출력
반응형
'Python' 카테고리의 다른 글
[Python] 05. 리스트(List), 튜플(Tuple), 집합(Set), 딕셔너리(Dictionary) (0) | 2024.09.29 |
---|---|
[Python] 03. 제어문 ( 조건문, 반복문, 예외 처리 ) (1) | 2024.09.28 |
[Python] 02. 데이터 타입, 변수 , 연산자 (4) | 2024.09.28 |
[Python] 01. 파이썬 개념 , 프로그램 설치 (2) | 2024.09.28 |