1. 파이썬에서는 함수도 객체
- 실수는 float형 클래스의 객체임을 확인해라
- x.is_integer() : 소수점 이하에 값이 있는지 묻는 메소드 호출
- 변수 x를 대상으로 is_integer 메소드를 호출하고 있는데, 이는 x에 담긴 실수 3.0이 객체라는 증거가 됨
- 그런데, 파이썬은 함수도 객체로 처리함
- 즉 함수 = 객체
- def func1(n) : 매개 변수가 있고 값을 반환하는 함수
- def func2(n) : 매개변수 없고 값의 반환도 없는 함수
- func1은 function 클래스의 객체임을 확인함
- func2는 function 클래스의 객체임을 확인함
- 즉, 함수는 매개변수의 유무, 하는 일, 반환 값의 유무에 상관없이 모두 function이라는 클래스의 객체임
- 우리가 함수를 정의하면, 파이썬은 그 함수의 내용을 기반으로 function 클래스의 객체를 생성하는 것
- say1과 say2 함수를 caller에 전달하 ㄴ것
- 함수도 객체라는 사실이 의미하는 바 è 먼저 매개변수에 함수를 전달할 수 있음
- def exp(x) : 함수 내에서 정의된, x의 n제곱을 반환하는 함수
- return exp : 위에서 정의한 함수 exp를 반환함
- f2는 제곱을 계산해서 반환하는 함수를 참조함
- f3는 세제곱을 계산해서 반환하는 함수를 참조함
'윤성우의 열혈 파이썬 (중급)' 카테고리의 다른 글
Story 05. Iterable 객체와 Iterator 객체 (0) | 2021.07.15 |
---|---|
Story 03. 깊은 복사와 얕은 복사 (0) | 2021.07.15 |
Story 09. 제너레이터 함수 (0) | 2021.07.15 |
Story 08. 두 함수를 대신하는 리스트 컴프리헨션 (0) | 2021.07.14 |
Story 07. map & filter (0) | 2021.07.12 |