[Python] Library | 01. functools

2023. 5. 12. 22:57·Language/Python

 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

'Language > Python' 카테고리의 다른 글

[Python] requirements.txt 파일 작성하기  (0) 2025.02.16
[Python] Library | 05. Pydantic  (0) 2025.02.16
[Python] Library | 04. selenium  (0) 2024.01.28
[Python] Library | 03. tqdm  (0) 2023.06.10
[Python] Library | 02. lmdb  (0) 2023.06.03
'Language/Python' 카테고리의 다른 글
  • [Python] Library | 05. Pydantic
  • [Python] Library | 04. selenium
  • [Python] Library | 03. tqdm
  • [Python] Library | 02. lmdb
Rayi
Rayi
  • Rayi
    아카이브
    Rayi
  • 전체
    오늘
    어제
    • 분류 전체보기 (262)
      • CS (40)
        • ML (3)
        • CV (2)
        • PS (34)
      • Reveiw (17)
        • Paper (17)
        • Github (0)
      • Pytorch (5)
      • Language (58)
        • Python (7)
        • JavaScript (32)
        • TypeScript (16)
        • C++ (3)
      • IDE (12)
      • Git (13)
      • Frontend (71)
        • React (8)
        • SolidJS (20)
        • CSS (12)
      • UI (3)
      • Backend (15)
        • DB (17)
        • Node.js (11)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ML
    figma
    frontend
    CSS
    UI
    C++
    ps
    python
    mongo
    ts
    js
    SOLID
    backend
    html
    Three
    review
    PRISMA
    API
    DB
    CS
    react
    nodejs
    deploy
    Express
    PyTorch
    vscode
    Git
    CV
    postgresql
    GAN
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
Rayi
[Python] Library | 01. functools
상단으로

티스토리툴바