함수
코드의 재사용과 구조화를 위해서 꼭 필요한 것
특정 작업을 수행하는 코드 블록으로 'def' 키워드를 사용하여 정의한다.
필요한 매개변수를 받아 작업을 수행하고 결과를 반환해 낸다.
함수 정의하고 호출하기
def output(): # 함수 정의
print("HamSu")
output() # 함수 호출
이게 제일 기본적인 함수를 정의하고 호출하는 방법이며, 이 외에도 함수를 사용하는 방법은 여러 가지가 있다.
- 기본 매개변수 (Default Parameters)
- 키워드 매개변수 (Keyword Arguments)
- 가변 매개변수 (Arbitray Arguments)
- 반환 값 (Retrun Value)
- 재귀 함수 (Recursive Function)
기본 매개변수 (Default Parameters)
함수를 호출할 때 매개변수를 제공하지 않는 상태, 기본 매개변수는 함수 정의 시 지정될 수 있다.
def output(a = 3): # 함수 정의
print(a)
output() # 함수 호출 결과 : 3
키워드 매개변수 (Keyword Arguments)
함수 호출 시 매개변수에 인자를 전달할 수 있다. 전달된 인자는 함수 내에서 작동 후 결과를 반환한다.
def output(a, b): # a와 b를 매개변수로 받을 수 있는 상태로 함수 정의
print(a+b)
output(3, 5) # a에는 3, b에는 5로 값을 줌, 결과: 8
가변 매개변수 (Arbitrary Arguments)
함수가 임의의 개수의 매개변수를 받을 수 있도록 한다. 매개변수 앞에 '*' 기호를 넣어 사용한다.
def output(*args): # args 매개변수를 가변 매개변수로 정의
for colors in args:
print(colors)
print(args) # 매개변수는 튜플 형식으로 인자가 저장된다.
output("red", "blue", "green") # 인자의 개수를 마음대로 전달
# 결과: red blue green ('red', 'blue', 'green')
반환 값 (Return Value)
함수가 작업을 수행한 후에 결과를 전달하는 데 사용된다. 'return' 키워드를 사용하여 반환할 값을 지정한다.
def output(a, b): #a, b를 매개변수로 전달받아 a + b의 값을 반환
return a + b
print(output(3, 4)) # 결과 7
재귀 함수 (Recursive Function)
함수 내부에서 자기 자신을 호출하는 함수이다.
def factorial(n): # n을 매개변수로 받는 함수 정의
if n == 0: # n이 0일 때 1 반환
return 1
else:
return n * factorial(n-1) #n이 0이 아니면 자기 자신을 다시 호출해서 팩토리얼 계산
print(factorial(5)) # 결과 : 120
'Python > Python 기초' 카테고리의 다른 글
파이썬 강의 - 7. 리스트(list)와 튜플(tuple) (0) | 2024.06.14 |
---|---|
파이썬 강의 - 6. 함수(2) (1) | 2024.06.10 |
파이썬 강의 - 5. 조건문과 반복문 (1) | 2024.06.09 |
파이썬 강의 - 4. 연산자 (1) | 2024.06.09 |
파이썬 강의 - 3. 변수와 자료형 (0) | 2024.06.09 |