In python argparse, is there a use case for nargs=1? : <p>It seems as though it would always make more sense to use the default action of <code>store</code> without specifying <code>nargs</code> so the output is always as expected, instead of sometimes being a <code>list</code> and sometimes not. I'm just curious if I missed something..</p>

<p>example</p>

<pre><code>&gt;&gt;&gt; import argparse                                                                                                                     
&gt;&gt;&gt; parser = argparse.ArgumentParser()                                                                                                  
&gt;&gt;&gt; parser.add_argument('--foo')                                                                                                        
_StoreAction(option_strings=['--foo'], dest='foo', nargs=None, const=None, default=None, type=None, choices=None, help=None, metavar=None)                                                                                                                                      
&gt;&gt;&gt; parser.add_argument('--bar', nargs=1)                                                                                               
_StoreAction(option_strings=['--bar'], dest='bar', nargs=1, const=None, default=None, type=None, choices=None, help=None, metavar=None)
&gt;&gt;&gt; parser.parse_args('--foo 1 --bar 1'.split())                                                                                        
Namespace(bar=['1'], foo='1')                                                                                                           
&gt;&gt;&gt; parser.parse_args('')                                                                                                               
Namespace(bar=None, foo=None)                                                                                                           
</code></pre>
