title: Python argparser default value is getting split by letters
body: <p>I have the below code to get an option in python</p>
  
  <pre><code>    parser.add_argument("--node", dest="node_list", metavar="all|&lt;NODE1&gt;,&lt;NODE2&gt;,...",
                      action='append',
                      help="Name of worker nodes on which daemonset pods have to be deployed seperated by comma(,).")
  </code></pre>
  
  <p>If <code>--node</code> is not given, I want to set default value as <code>all</code>. 
  When I give <code>default="all"</code>, and loop through the node_list argument, here is what I get</p>
  
  <pre><code>       print nodeList
            for x in nodeList:
                print x
                if "all" in x:
  </code></pre>
  
  <p>And the O/P shows</p>
  
  <pre><code>all
  a
  l
  l
  </code></pre>
  
  <p>So "all" is split as 'a','l','l'. 
  If I explicitly give --node="all" , during execution , it works fine.</p>