본문 바로가기

functools3

[Py] High-order Function (고차함수) 정의High-order function(고차 함수)란, 다음 조건 중 하나 이상을 충족하는 function를 가리킴:다른 함수를 argument로 받을 수 있는 function다른 함수를 반환할 수 있는 function즉, High-order function이란 function을 다루는 function이라고 생각하면 됨. Python에서는 function이 1급 객체(First-class object)이기 때문에,function이 argument(인수)로 다른 function에 넘겨지거나,다른 function에서 return value(반환값)으로 사용되는 것이 가능함.2023.07.15 - [Python] - [Python] first-class object (일급객체) [Python] first-cl.. 2024. 11. 20.
[Python] functools.partial functools.partial(func, /, \*args, \*\*keywords) ref.: functools.partial function 처럼 동작하는 partial object를 반환한다. 반환되는 partaial object를 호출시 parameter로 받은 func이 호출되며 partial object를 호출할 때 넘겨진 positional arguments args와 keyword arguments keywords가 해당 func의 argument로 주어져 호출된다. 만약 partial object가 호출될 때 더 많은 arguments가 주어질 경우, partial object를 생성할 때 주어졌던 args와 keywords에 append되어 func에 넘겨진다 (keyword에 따라 .. 2023. 8. 25.
[Python] lambda expression and map, filter, reduce. Python 에서 lambda function (or lambda expression)은 anonymous function(익명함수)를 만드는데 사용됨. function 형태로 code구현의 재사용을 해야하긴 하지만, def문을 이용하여 만들기에는 너무 간단한 경우 등에 사용된다. IIFE(Immediately Invoked Function Expression)로 사용되는 경우도 꽤 있다. 일반적인 function을 정의하는 def문과 같은 수준의 기능을 가지지만 복잡한 function body가 필요한 경우엔 적합하지 않음. 하나의 expression을 사용하기 때문에, exrepssion에 지나치게 복잡한 처리를 무리해서 집어넣는 형태로 구현해선 안됨. lambda는 약간만 복잡해도 알아보기 어렵기 .. 2023. 7. 7.
728x90
반응형