argparseの動作に気づき、戸惑いました(これまで、ファイルのダムリストに使用したことはなかったと思います)。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('multi', action='append', nargs='+')
print(parser.parse_args())
これにより、次の出力が得られます。
~$ ./testargs.py foo bar baz
Namespace(multi=[['foo', 'bar', 'baz']])
~$
私は、リスト内のリストではなく、であると期待multi
していました。['foo', 'bar', 'baz']
現状では、処理する前につかむ必要がありますargs.multi[0]
。これは大したことではありませんが、醜い疣贅のように感じます。なぜそこにあるのかを理解したいと思います。
私は愚かなことをしているのですかadd_argument
、それともこれは避けられない癖ですか?