argparseを使用して、それが分かっている引数を解析し、残りの部分を手つかずのままにします。たとえば、私は-o
オプションを使用し、そのまま残りを残し引数をそのままargparseに残す
performance -o output other_script.py -a opt1 -b opt2
を実行できるようにしたいです。
モジュールprofiler.pyはoptparseのと同じようなことを行いますが、私はargparse使用しているので、私はやっている:これもother_script.pyもあれば、何が起こるか動作しているようですが、
def parse_arguments():
parser = new_argument_parser('show the performance of the given run script')
parser.add_argument('-o', '--output', default='profiled.prof')
return parser.parse_known_args()
def main():
progname = sys.argv[1]
ns, other_args = parse_arguments()
sys.argv[:] = other_args
を-o
フラグがありますか?
この問題を解決する一般的な方法はありますか?
ああ、そのおかげで知りませんでした!マーカーがなければ、argparseが何が起こっているのかを理解することは実際には非常に難しいでしょう。簡単な問題ではありません。 –
少なくとも、python3では 'parse_known_args()'メソッドを使う必要があることを明確にする必要があります。 6) – krishonadish