私が正しく理解していれば、あなたの質問は、いくつかのフラグまたはオプションのパラメーターと一緒にファイルのリストをコマンドに渡すことについてです。私が正しければ、argparse の引数設定を活用する必要があります。
ファイルp.py
import argparse
parser = argparse.ArgumentParser(description='SO test.')
parser.add_argument('--doh', action='store_true')
parser.add_argument('files', nargs='*') # This is it!!
args = parser.parse_args()
print(args.doh)
print(args.files)
上記のコメント行は、未定義の数 >= 0 ( nargs ='*'
) の位置引数を期待するようにパーサーに通知します。
コマンドラインからスクリプトを実行すると、次の出力が得られます。
$ ./p.py --doh *.py
True
['p2.py', 'p.py']
$ ./p.py *.py
False
['p2.py', 'p.py']
$ ./p.py p.py
False
['p.py']
$ ./p.py
False
[]
ファイルが複数であるか 1 つだけであるかに関係なく、ファイルがリストにどのように表示されるかを観察します。
チッ!