title: Purpose of star operator when used on List
body: <p>What is the star operator doing to the input argument list in this example?</p>
  
  <pre><code>def main(name, data_dir='.'):
      print 'name', type(name)
  
  if __name__ == '__main__':
      main(*sys.argv)
  </code></pre>
  
  <p>Concretely, if I run the program with the star operator it prints:</p>
  
  <pre><code>name &lt;type 'str'&gt;
  </code></pre>
  
  <p>if run without the star <code>main(sys.argv)</code> it prints:</p>
  
  <pre><code>name &lt;type 'list'&gt;
  </code></pre>