私は、コマンドラインから呼び出してライブラリ関数としてインポートできるようにするPythonスクリプトを作成しています。 理想的には、コマンドラインオプションと関数は同じデフォルト値のセットを使用する必要があります。 どちらの場所でもデフォルトの単一のセットを再利用できる最良の方法は何ですか?Pythonのoptparseのデフォルトと関数のデフォルト値
ここには重複したデフォルトの現在のコードがあります。
from optparse import OptionParser
def do_stuff(opt1="a", opt2="b", opt3="c"):
print opt1, opt2, opt3
if __name__ == "__main__":
parser = OptionParser()
parser.add_option("--opt1", default="a")
parser.add_option("--opt2", default="b")
parser.add_option("--opt3", default="c")
#parser.set_defaults(opt1="a")
options, args = parser.parse_args()
do_stuff(*args, **vars(options))