에 기본 매개 변수를 전달 나는 기능을 가지고중첩 된 기능 파이썬
foo(x, setting1=def1, settings2=def2)
(실제로 내가 외부에만 1을 설정할 필요가있는 기본 매개 변수의 무리와 함께 타사 라이브러리 함수가 있지만 위해서 예를들 ..)
나는
bar(y, settings2_in=def2)
x = get_x(y)
foo(x, settings2=settings2_in)
이 괜찮에서이 호출하고 있지만, 문체 차라리 매개 변수의 이름을 부르는 것 settings2_in
settings2
. 다른 레이어를 계속 전달할 때 매개 변수의 이름을 계속 변경해야하며 추악 해집니다.
bletch(z, settings2_in_2=def2)
y = get_y(z)
bar(y, settings2_in=settings_in_2)
아래 기본 매개 변수 이런 식으로 함수의 여러 층의 일부를 전달하는 "좋은"/ 파이썬의 방법이 있습니까?
파이썬은 운동하기에 충분히 영리 그게 내가 할 경우 :
settings2
의 2가 사용하는 상황에서 다른 것을
bar(y, settings2=def2)
x = get_x(y)
foo(x, settings2=settings2)
?
그냥'bar (y, ** kwargs)'다음에'foo (x, ** kwargs)'라고 생각합니다. –
** kwargs는 멋지게 할 수있는 것처럼 보입니다. 감사! –