title: Which classes cannot be subclassed?
body: <p>Is there any rule about which built-in and standard library classes are not subclassable ("final")?</p>
  
  <p>As of Python 3.3, here are a few examples:</p>
  
  <ul>
  <li><code>bool</code></li>
  <li><code>function</code></li>
  <li><code>operator.itemgetter</code></li>
  <li><code>slice</code></li>
  </ul>
  
  <p>I found a <a href="https://stackoverflow.com/questions/2825364/final-classes-in-python-3-x-something-guido-isnt-telling-me">question</a> which deals with the implementation of "final" classes, both in C and pure Python.</p>
  
  <p>I would like to understand what reasons may explain why a class is chosen to be "final" in the first place. </p>