모두의 파이썬 11번째 시간!
오늘은 '함수를 정의하고 호출'해보는
시간을 가져보도록 하겠다!
함수를 정의하고 호출하는 프로그램
'hello'라는 함수를 정의하기 위해 앞에 'def'를 쓴다.
def는 'define(정의하다)'의 앞 3글자만 약칭으로 쓴 것 이다.
'def hello():' < 이렇게 적어주면 되는데
괄호안에는 인자를 삽입할 수 있다.
필요가 없을 시에는 그냥 아무것도 입력하지 않는다.
그리고 함수 호출할때 쓰는 def도 마찬가지로 끝에 콜론(:)을 붙여줘야한다.
코드 마지막 3줄 'hello()'는
hello 함수를 총 3번 호출한 것이다.
그래서 hello함수가 호출되면 print("hello Python")이
출력되게 지정했기 때문에 3번 나타난다.
인자가 있는 함수
첫 번째는 인자가 없는채로 함수를 호출했다면
이번엔 인자를 삽입해보도록 하자.
*인자 : 사용자가 함수를 호출할 때 함수에게 알려주는 정보
이번엔 'hello2'라는 함수를 호출하고 인자(괄호 안)에 'name'을 입력한다.
그리고 들여쓰기에 'print("Hello", name)' 이라고 입력해준다.
그리고 마지막에 또 마찬가지로
hello2를 3번 호출해 주는데
이번엔 인자값을 입력해보자
"Justin", "John", "Mike"
그러면 코드를 구성 한 대로
hello2 함수가 3번 호출되며
각기 다르게 지정한 인자값이 출력됩니다.
결괏값이 있는 함수
DAY 11의 마지막 챕터는 '결과값이 있는 함수'다.
먼저 'square' 함수를 불러온다. 인자값은 a
그리고 square은 정사각형이다.
정사각형의 넓이를 구하고자 한다.
c라는 변수를 정의하고 a*a를 변수값으로 넣는다.
그리고 'return'을 사용해서 square로 결괏값을 돌려준다.
이번엔 삼각형의 넓이를 구하기위해 'triangle' 함수를 불러오고 인자 a,h 2개를 생성.
마찬가지로 변수 c를 선언해주고 값은 a*h/2(밑변x높이/2)로 처리해준다.
s1 = 4 라는 변수를 선언.
s2 = square(s1)이라는 변수를 선언.
s2에서 square함수를 사용하고 인자는 s1
square 본래 함수의 인자는 return c에 의해
c= a*a이므로 s2 = 4*4 = 16이다.
print(s1,s2)를 입력하여 변수 s1, s2를 출력한다.
삼각형은 'print(triangle(3, 4))'라고 입력한다.
triangle 함수를 불러오고 인자 값 a에 3 h에 4가 대입된다.
변수 c = a * h / 2 이므로
6이 return에 의해 함수값에 되돌아간다.
정사각형 한 변의 길이와 넓이
삼각형의 넓이
둘 다 잘 출력되었다.
뭔가 이제 슬슬 이해하기가 어려워지고 있다 ㅠㅠ...
사실 마지막 '결괏값이 있는 함수'는
완전 이해하지는 못했다.
2~3회독은 해야 이해가 가능할까 싶다.
나 앞으로 잘 할수 있을까...?
'프로그래밍 > 파이썬' 카테고리의 다른 글
모두의 파이썬 - DAY 13 (거북이 그래픽 응용하기) (0) | 2021.11.24 |
---|---|
모두의 파이썬 - DAY 12 (함수 응용하기) (2) | 2021.11.20 |
모두의 파이썬 - DAY 10 (while 명령으로 반복하기) (2) | 2021.11.15 |
모두의 파이썬 - DAY 9 (Random 모듈로 임의의 수 뽑기) (0) | 2021.11.12 |
모두의 파이썬 - DAY 8 (True&False 판단하기) (0) | 2021.11.11 |
댓글