私には2つの機能があります:
def f(a,b,c=g(b)):
blabla
def g(n):
blabla
c
function のオプションの引数ですf
。ユーザーがその値を指定しない場合、プログラムは g(b) を計算する必要があり、それが の値になりますc
。しかし、コードはコンパイルされません - name 'b' is not defined と表示されます。それを修正する方法は?
誰かが提案した:
def g(b):
blabla
def f(a,b,c=None):
if c is None:
c = g(b)
blabla
しかし、これはうまくいきません。おそらく、ユーザーc
は None を意図していたのに、c
別の値を持つことになります。