私には2つの機能があります:
def f(a,b,c=g(b)):
blabla
def g(n):
blabla
cfunction のオプションの引数です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別の値を持つことになります。