title: Python subprocess not passing curly brackets as arguments on Windows
body: <p>At the Windows command line, the following behaves exactly as expected:</p>
  
  <pre><code>C:\&gt; c:\cygwin\bin\printf "&lt;%s&gt;\n" "{foo}"
  {foo}
  </code></pre>
  
  <p>From inside a native win32 Python instance, however, the curly brackets are stripped:</p>
  
  <pre><code>&gt;&gt;&gt; subprocess.Popen(['c:\\cygwin\\bin\\printf', '&lt;%s&gt;\n', '{foo}'],
  ...                  stdout=subprocess.PIPE).communicate()[0].rstrip('\n')
  'foo'
  </code></pre>
  
  <p>What's going on here?</p>