title: Where is the source of the python code that checks the function arguments?
body: <p>When you call python function, it checks the arguments and raises <code>TypeError</code>s if you pass something that does not correspond to the function signature:</p>
  
  <ul>
  <li><code>A takes from X to Y positional arguments but Z were given</code></li>
  <li><code>got multiple values for argument X</code></li>
  <li><code>got an unexpected keyword argument</code></li>
  </ul>
  
  <p>etc.</p>
  
  <p>I want to see the code that performs those checks, so that I better understand how and when python performs them.</p>