私は2つの引数をとるPython関数を持っていると仮定しますが、2番目の引数はオプションで、デフォルトは最初の引数として渡されます。だから、私はこのような何かをしたい:Pythonでは、他の引数に関して関数の引数のデフォルトを指定できますか?
def myfunc(arg1, arg2=arg1):
print (arg1, arg2)
それ以外は動作しません。私が考えることができる唯一の回避策は次のとおりです。
def myfunc(arg1, arg2=None):
if arg2 is None:
arg2 = arg1
print (arg1, arg2)
これを行うより良い方法はありますか?
私はちょうどこれを考え直しているかもしれませんが、デコレータで達成することは可能かもしれません。それは一見すると分かりにくいので、おそらく悪い考えですが、それは考えです。 – marcog