본문 바로가기

분류 전체보기83

별개로 호출될 수 있는 curry 함수 만들기 안전성 있는 curry? 좀 더 쓰기 편한 curry def curry(func) : curry.__func_name__ = func.__name__ f_args, f_kwargs = [], {} def f(*args, **kwargs) : nonlocal f_args, f_kwargs if args or kwargs : print("args", args, "kwargs", kwargs) f_args += args f_kwargs.update(kwargs) if len(f_args) + len(f_kwargs) >= func.__code__.co_argcount : result = func( *f_args, **f_kwargs) f_args, f_kwargs = [], {} return result re.. 2021. 7. 20.
reduce, 원하는 함수로 배열 혹은 값을 누적처리하여 결과값을 구해보자 reduce 어찌보면 좀 생소한 개념일 것이다. 일단 예를 들어서 한번 파악해보자 from functools import reduce def add(x ,y) : print ( "x : ", x, " y : ", y) return x + y reduce(add, [0, 1, 2, 3, 4]) 일단 위는 reduce의 예제이다. reduce에는 두 가지 혹은 세 가지의 매개변수가 들어간다. 일단 처음 변수는 함수이다. 위를 보면 add 함수를 사용한 것을 볼 수 있는데 이 함수는 배열의 요소값을 순차적으로 돌며 계산하고 싶은 함수를 뜻한다. 다음은 배열이다. 배열은 계산하고 싶은 값들의 모음이다. 결과를 보면 x : 0 y : 1 x : 1 y : 2 x : 3 y : 3 x : 6 y : 4 10 좀 더.. 2021. 7. 17.
python curry update 이전에 작성했던 python curry 문이다. def curry(func) : curry.__func_name__ = func.__name__ f_args, f_kwargs = [], {} def f(*args, **kwargs) : nonlocal f_args, f_kwargs if args or kwargs : print("args", args, "kwargs", kwargs) f_args += args f_kwargs.update(kwargs) return f else : print( f_args, f_kwargs) result = func( *f_args, **f_kwargs) f_args, f_kwargs = [], {} return result return f def add (a, b) : .. 2021. 7. 16.
나라는 가치, 하지 않으 면 후회하는 것 나의 가치, 오늘 자신의 가치를 위해 3가지 좋은 내용을 보게 되었다. 1. 아무리 힘들어도 자신의 가치는 변하지 않는다. 2. 나 자신을 과대평가하라 3. 주어진 상황은 항상 내 손안에 달려 있다. 우선 첫 번째, 내용은 20달러를 구기고, 밟아도 그 가치는 변하지 않는 다는 것이다. 이것을 내 자신에게 대입하자면 인생에 있어 힘들고 고달픈일이 있더라도 나 자신의 가치는 변하지 않는다는 것이다. 다음으로, 자신을 성장시키기 가장 좋은 방법은 자신을 과대평가하는 것이다. 자기자신 조차 자신을 믿지 못한다면 언제나 과소평가 당할 뿐이다. '생각하는 것 만큼 성장 할 것이고, 그 가치는 영원할 것이다.' 마지막으로, 어떤 상황이든 일을 어떻게 처리해 나갈지는 나의 결정에 달려 있다. 즉 내가 세상을 어떻게 .. 2021. 7. 16.