LoginSignup
3
4

More than 3 years have passed since last update.

Pythonのargparseを使っているメソッドをシェルではなくPythonの別ファイルから呼び出す

Posted at
file1.py
import argparse


parser = argparse.ArgumentParser(description='')
parser.add_argument('--hoge')
parser.add_argument('--fuga')

def run(env, *_args):
  args = parser.parse_args(_args)
  hoge = args.hoge
  fuga = args.fuga

この場合の run メソッドをシェルではなく、別のPythonのファイル内から呼び出したいとき。

*_args は可変長引数なので、そのまま↓のような感じでOK。

file2.py
from file1 import run


run(env, '--hoge', 'hoge', '--fuga', 'fuga')

型が指定されている場合は、正しく渡してあげてください。

TypeError とか出てきてデバッグがちょっと辛かった...

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4