次の標準的なインポート手順があります。
from ROOT import *
ROOT がコマンド ライン オプションと引数を処理する方法のため、スクリプトのコマンド ライン解析を台無しにしないために、次のようなものが必要です。
argv_tmp = sys.argv
sys.argv = []
from ROOT import *
sys.argv = argv_tmp
多くのスクリプトでこの操作を実行する必要があります。この操作は変更されるか、より良い方法が見つかる可能性があるため、この手順をインポートされたモジュールが提供する単一の関数に集中させ、将来の手順の変更を容易にしたいと考えています。
def import_ROOT():
# magic
import os
import sys
import_ROOT()
import docopt
from ROOT import *
スクリプトの操作の結果が上記の手順と同じになるように、ROOT モジュールを関数内からインポートするにはどうすればよいですか?