Python, 파이썬

locals, return 될 변수를 동적으로 변경하는 방법

jake_kim 2024. 12. 5. 09:04
반응형

# locals 에는 메소드의 변수가 저장되어 있음. 이를 이용해서 returns 가 요구하는 변수들만 뽑아서 리턴할 수 있다.

def forward(x, f, h, returns):

    xf = x + f
    fh = f + h
    xfh = xf * fh

    result = xfh

 

    variables = locals()

    return tuple(variables[r] for r in returns)

 

a, b = forward(1,2,3, returns=("xf", "fh")) # xf 와 fh 를 리턴해달라 요구

d, e, f = forward(1,2,3, returns=("xf", "fh", "result")) # xf 와 fh오f result 를 리턴해달라 요구

반응형