Language/Python
[Python] Library | 01. functools
Rayi
2023. 5. 12. 22:57
functools 라이브러리는 기존에 만들어진 함수에서 하나 이상의 인수를 고정한 새로운 함수를 정의할 때 사용합니다. 주로 사용하는 함수는 functools.partial( ) 입니다.
partial(func, arg_1, arg_2, ...) | 인수가 고정된 함수를 반환한다 | |
func | function | 인수를 고정할 함수 |
arg_n | * | 고정할 인수 |
다음과 같은 함수 func1( ) 이 있다고 가정합시다.
def func1(arg1, arg2, arg3):
if(arg1 == 0):
return arg2
else:
return arg3
이 func1( )를 기반으로 항상 두 번째 인수를 반환하는 함수 func2( )와 항상 세 번째 인수를 반환하는 함수 func3( )를 정의하고자 할 때, 다음과 같이 나타낼 수 있습니다.
def func2(arg2, arg3):
return func1(0, arg2, arg3)
def func3(arg2, arg3):
return func1(1, arg2, arg3)
여기서 functools.partial을 사용한다면 다음과 같이 간단히 나타낼 수 있습니다.
func2 = functools.partial(func1, 0)
func3 = functools.partial(func1, 1)
728x90