title: Format string unused named arguments
body: <p>Let's say I have:</p>
  
  <pre><code>action = '{bond}, {james} {bond}'.format(bond='bond', james='james')
  </code></pre>
  
  <p>this wil output:</p>
  
  <pre><code>'bond, james bond' 
  </code></pre>
  
  <p>Next we have:</p>
  
  <pre><code> action = '{bond}, {james} {bond}'.format(bond='bond')
  </code></pre>
  
  <p>this will output:</p>
  
  <pre><code>KeyError: 'james'
  </code></pre>
  
  <p>Is there some workaround to prevent this error to happen, something like:</p>
  
  <ul>
  <li>if keyrror: ignore, leave it alone (but do parse others)</li>
  <li>compare format string with available named arguments, if missing then add</li>
  </ul>