728x90
모든 프로그래밍의 언어에는 함수라는 개념이 있다. 아니 있을 것이다...
함수를 사용하게 되면 소스코드가 굉장히 간결해지고 가독성도 좋아진다.
그래서 이번에는 프로그래밍에서 문법 다음으로 기본이 되는 함수에 대해서 알아볼 예정이다.
def 함수명():, 반환값 없음
def print_hello():
print("hello python!")
print_hello()
################출력 결과################
hello python!
가장 간단한 형태의 함수이다. 입력하는 인자도 없고 반환되는 값도 없는 형태이다.
def 함수명(인자1, 인자2, ...):, 반환값 없음
def calculator_add(var1, var2):
result = var1 + var2
print("%d + %d = %d" %(var1, var2, result))
calculator_add(5, 1)
################출력 결과################
5 + 1 = 6
입력하는 인자값은 있지만 반환값은 없는 형태이다.
def 함수명():, 반환값 있음
def result_div():
return 8/2
result = result_div()
print("result = %d" %result)
################출력 결과################
result = 4
입력 인자값은 없지만 반환되는 값은 있는 함수 형태이다.
def 함수명(인자1, 인자2, ...):, 반환값 있음
def calculator_mul(var1, avr2):
return var1*avr2
result = calculator_mul(3,7)
print("result = %d" %result)
################출력 결과################
result = 21
입력 인자값도 있고 반환값도 있는 함수 형태이다.
def 함수(*인자):
def print_sports(*arg):
for sports in arg:
print("sports :%s" %sports)
print_sports("soccer","baseball","ski")
################출력 결과################
sports :soccer
sports :baseball
sports :ski
입력할 인자 수가 정해지지 않았을 경우에는 *인자를 사용해서 위와 같이 함수를 선언할 수 있다.
def 함수(**인자):
def print_sports_member(**arg):
for number in arg:
print("%s member is %d" %(number, arg[number]))
print_sports_member(soccer = 11,baseball=9,basketball=5)
################출력 결과################
soccer member is 11
baseball member is 9
basketball member is 5
인자값에 **을 붙이게 되면 딕셔너리 형태로 인자를 받을 수 있다.
함수 선언 방법은 위 예제를 참고하자.
def 함수(인자1, 인자2, ...): 반환값 여러 개
def calculator(var1, avr2):
result_add = var1 + avr2
result_min = var1 - avr2
result_mul = var1 * avr2
result_div = var1 / avr2
return result_add, result_min, result_mul, result_div
result = calculator(6,2)
result1, result2, result3, result4 = calculator(6,2)
print(result)
print(result1)
print(result2)
print(result3)
print(result4)
################출력 결과################
(8, 4, 12, 3.0)
8
4
12
3.0
위와 같이 반환값이 여러 개가 나오는 함수도 선언할 수 있다.
함수의 리턴 값을 받는 형태에 따라서 튜플로 반환받을 수 있기도 하고 요소값 하나씩 받을 수도 있다.
def 함수(인자1, 초기값 선언)
def howOldAreYou(name, age = 10):
print("%s is %d years old" %(name, age))
howOldAreYou('kevin',10)
howOldAreYou('Alex',12)
howOldAreYou('Bob',3)
howOldAreYou('Jimmy')
################출력 결과################
kevin is 10 years old
Alex is 12 years old
Bob is 3 years old
Jimmy is 10 years old
위와 같이 함수를 선언할 때 초기값을 선언할 수도 있다.
인자값으로 초기값을 선언한 인자에 대해서 입력을 하지 않으면 초기값으로 입력이 되고
다른 인자값을 입력하게 되면 입력한 인자값으로 함수가 수행된다.
단, 초기값으로 선언하는 인자는 반드시 맨 뒤에 위치해야 한다.
728x90
'Python' 카테고리의 다른 글
파이썬에서 클래스(class)를 다뤄보자. (0) | 2024.06.25 |
---|---|
파이썬에서 파일을 읽고 써보자(Read/Write) (0) | 2024.06.22 |
파이썬에서 반복문 while문과 for문 사용하기 (0) | 2024.06.20 |
파이썬에서 조건문 if 사용 방법 (0) | 2024.06.16 |
파이썬에서 bool을 다뤄보기 (0) | 2024.06.14 |