728x90
파이썬의 함수는 재사용 가능한 코드의 블록(모듈화)으로, 특정 작업을 수행하는 코드를 그룹화합니다. 함수를 사용하면 코드의 중복을 줄이고, 프로그램의 가독성을 높이며, 유지 보수를 용이하게 할 수 있습니다.
1. 함수의 기본 구조
파이썬에서 함수는 'def' 를 사용하여 정의합니다. 함수의 몸체는 들여쓰기를 사용하여 구분합니다.
함수는 이름, 매개변수(parameter), 반환 값(return value) 등을 가질 수 있습니다.
- 함수명: 함수를 호출할 때 사용할 이름입니다.
- 매개변수: 함수에 전달되는 입력 값입니다. 필요하지 않은 경우 생략할 수 있습니다.
- 반환값: 함수의 실행 결과를 호출자에게 돌려주는 값입니다. return 키워드를 사용하여 지정합니다. 반환할 값이 없으면 return을 생략하거나 return None을 사용할 수 있습니다.
def 함수명(매개변수):
# 실행할 코드
return 반환값
def greet(name):
return f"Hello, {name}!"
print(greet("Alice")) # 출력: Hello, Alice!
2. 매개변수와 인자
- 매개변수(parameter): 함수 정의에서 함수로 전달되는 값을 받는 변수
- 인자(argument): 함수를 호출할 때 함수에 전달하는 실제 값
위치 매개변수와 키워드 매개변수
def introduce(name, age):
return f"My name is {name} and I am {age} years old."
# 위치 인자 사용
print(introduce("Bob", 30))
# 키워드 인자 사용
print(introduce(name="Charlie", age=25))
기본값을 가진 매개변수
함수 매개변수에는 기본값을 지정할 수 있으며, 호출 시 해당 매개변수를 생략하면 기본값이 사용됩니다.
def greet(name, greeting="Hello"):
return f"{greeting}, {name}!"
print(greet("Alice")) # greeting 매개변수 생략
print(greet("Alice", "Good morning")) # greeting 매개변수 지정
3. 가변 매개변수
함수에 가변 개수의 인자를 전달할 수 있습니다. *args는 임의 개수의 위치 인자를 받을 때 사용하고, **kwargs는 키워드 인자를 딕셔너리 형태로 받을 때 사용합니다.
def function_with_many_arguments(*args, **kwargs):
print(args) # 위치 인자들의 튜플
print(kwargs) # 키워드 인자들의 딕셔너리
function_with_many_arguments(1, 2, 3, name="Alice", age=25)
4. 익명 함수(람다 함수)
lambda 키워드를 사용하여 이름 없는 함수를 정의할 수 있습니다. 람다 함수는 간단한 함수를 한 줄로 표현할 때 유용합니다.
multiply = lambda x, y: x * y
print(multiply(2, 3)) # 출력: 6
728x90
반응형
'IT > Python' 카테고리의 다른 글
[파이썬] 사용자 입출력(I/O) / 파일 읽고 쓰기 (1) | 2024.03.12 |
---|---|
[파이썬] 정규 표현식 (0) | 2024.03.12 |
[파이썬] 제어문 (0) | 2024.03.12 |
[파이썬] 집합(Set) 자료형 (0) | 2024.03.12 |
[파이썬] 딕셔너리(Dictionary) 자료형 (0) | 2024.03.12 |