title: ValueError: unsupported format character while forming strings
body: <p>This works:</p>
  
  <pre><code>print "Hello World%s" %"!"
  </code></pre>
  
  <p>But this doesn't</p>
  
  <pre><code>print "Hello%20World%s" %"!"
  </code></pre>
  
  <p>the error is <code>ValueError: unsupported format character 'W' (0x57) at index 8</code></p>
  
  <p>I am using Python 2.7.</p>
  
  <p>Why would I do this? Well <code>%20</code> is used in place of spaces in urls, and if use it, I can't form strings with the printf formats. But why does Python do this?</p>