그래서 저는 약간의 코드를 작성하고 있었고 재귀 적으로 정의 할 때 전달 된 변수를 기반으로하는 기본 변수가있는 메소드를 가질 수 없다는 것을 알아 냈습니다. 표면 수준의 연구는 파이썬이 컴파일시 선언하도록 요구하고 있습니다. 따라서 다음은 허용되지 않습니다.파이썬에서 불만족시 선언해야하는 기본 매개 변수와 관련된 어떤 방법이 있습니까?
def foo(bar, potato = bar*bar):
if(bar is 0): return potato
potato -= bar
return foo(bar-1, potato)
코드는 hogwash입니다. 그러나 그것이 효과가 있다면 그것은 되돌아 올 것입니다 (bar * (bar-1))/2.
나는 감자를 간단히 수동으로 전달할 수 있다는 것을 알고 있지만, 전역 또는 초기에 감자를 사용하지 않고이 작업과 비슷한 것을 만드는 다른 방법이 있습니까?