私は名前の衝突を解決する最善の方法を考え出すのに苦労しています。私の目の前にあるものの要点は次のとおりです。定義された関数と別の関数のパラメータとの間の名前の衝突を解決するにはどうすればよいですか?
def clean():
# do some cleaning stuff
def build(clean=True):
if clean:
clean()
いくつかの理由から、私はここでAPIを変更したくありません。この矛盾を解決する最良の戦略は何ですか?今のところ、私がやっている:リネーム、物事の短い最高/唯一の解決策かもしれません
def clean():
# do some cleaning stuff
clean_alias = clean
def build(clean=True):
if clean:
clean_alias()
。関数の本体の外側のスコープにあるclean
を参照する別の方法があるかどうかは疑問です。
偉大な答え。わかりやすくするために関数定義の先頭に 'clean_func = globals()['clean']'を実行しました。私は明日の回答としてこれをマークします、それは私にそれをまだマークさせません。 – jsdalton