파이썬 함수를 3가지 유형으로 나누어 생각해보자.
함수 유형 1: 입력값, return값이 없음
def function():
print("hello")
print("It's a golden time of our life."
print("Enjoy ur life!!")
#함수호출할 때
funtion()
함수를 호출하면,
본문에 있는 코드가 진행되고
화면에
hello
It's a golden time of our life.
Enjoy ur life!
가 차례로 프린트된다.
이러한 함수는 입력값도, 반환되는 return값도 없다.
이런 형태의 함수를 쓰면 반복되는 문장을 여러번 쓰지 않아도 된다는 장점이 있다.
함수 유형 2: 입력값 있고, return값이 없음
def function(parameter1, parameter2):
print(f"{parameter1}은 {parameter2}입니다.")
#함수호출할 때
funtion(argument1, argument2)
함수를 호출하면,
인수 argument1, argument2가
매개변수 parameter1, parameter2 자리로 들어가
본문에 있는 코드에서 실행되고
화면에
argument1은 argument2입니다.
가 프린트된다.
만약
function("Olivia", "코딩선생님") 이라는 함수를 호출하면
Olivia은 코딩선생님입니다.
가 출력된다.
이런 함수는
입력값을 활용하여
본문 내용을
더욱 창의적으로(?) 구성할 수 있다.
위의 코드 같은 경우에는 반환되는 return값은 없다.
이제까지 이야기한 것은
지난 게시글의 내용가 비슷하다.
지난 내용을 더 복습하고 싶다면
아래의 게시글을 확인하면 된다.
함수 유형 3.
★ return 값이 있는 함수: 출력값을 갖는다★
아래의 함수 같은 경우에는
return 이라는 단어가 등장하는데,
영어로는 반환하다라는 뜻이다.
return 값이란
return 뒤에 오는 모든 것이다.
def function():
result = 1 + 2
return result
def function():
return 1 + 2
# 함수 호출
function()
함수에서 return이 등장하면
출력값 Output이 있다는 것이다.
함수 유형 1,2 같은 경우에는
리턴값 없이,
특정 값을 print 했기 때문에 그냥 화면에 인쇄되듯 찍히는 것에 그친다면
함수 유형 3은
function을 호출하는과 동시에
함수가 호출된 부분이
리턴값, 출력값으로
(여기서는 1+2 즉 3)
대체된다.
예시를 보자.
호출한 함수를 변수 a에 저장하겠다.
return 값이 없을 때는
변수에 저장되는 값이 없으므로
a를 출력해보면,
None이다.
return 값이 있을 때는
출력값이 있으므로 그것이 a에 저장된다
a = function()
이라고 변수를 지정하면
a = 3
이 되는 것이다.
a를 출력해보면
3이다.
만약 함수의 출력값을 변수에 저장하지 않고
함수 자체만 호출할 때는 어떨까?
이 경우에는 함수 자체가 갖는 값, 즉 출력값을 출력하는 것이 아니라
내부 함수가 실행되는 것이기 때문에
hello()함수는 print()함수를 실행하여
None값 없이, hello를 출력할 것이다.
bye()함수는 함수 자체에 값은 할당되지만,
콘솔창에 출력되는 것은 없을 것이다.
4. 우리가 이미 알고 있는 함수들도 return값이 있었던 것이다.
우리가 이미 알고 있는 len()같은 함수들도
return 값이 있기 때문에
그 값이
len("Olivia") 자리를 대체했고
a라는 변수에 저장되어
a를 출력할 수 있었던 것이다!
5. 파이썬 실전 문제
제목을 만들어주는 return값이 있는 함수 만들기를 연습해보자
1단계
1. 메세지를 넣으면 매 단어의 앞글자만 대문자로 바뀐다.
2. 입력값과 출력값을 갖는 함수로 만든다
title() 함수
각 단어의 첫 문자를 대문자로 바꿔주는 함수이다.
return 값이 있는 경우
아래의 재생버튼 ▶을 눌러 실행하면
return 값이 없는 경우 > None으로 출력됨
아래의 재생버튼 ▶을 눌러 실행하면
'파이썬 > 파이썬(python) 초급' 카테고리의 다른 글
[10-3 파이썬] 윤년 파이썬 실전 예제, 함수 return (0) | 2022.08.18 |
---|---|
[10-2 파이썬] 함수 조기 return 리턴 (0) | 2022.08.18 |
[9-6 파이썬] 파이썬 코드 시각화 웹사이트, 파이썬 코드 과정 무료 시각화 사이트, visualize code in python (0) | 2022.08.17 |
[9-5 파이썬] 비밀 경매 프로그램 만들기, 파이썬 실전 예제, 딕셔너리 예제, 딕셔너리 문제 (1) | 2022.08.17 |
[9-4 파이썬] 딕셔너리 내장메서드, clear(), copy(), fromkeys(), get(), items(), keys(), values(), pop(), popitem() (0) | 2022.08.17 |