title: Python's not() Function not a Normal Function?
body: <p>So I know python has the not operator, but how does the not() function come into play?</p>
  
  <p>From some simple testing it appears that it has the signature of not(args[]), while at the same time not acting entirely like a normal function. For example:</p>
  
  <pre class="lang-py prettyprint-override"><code>x = True
  not x # -&gt; False
  not(x) # -&gt; False
  x = False
  not x # -&gt; True
  not(x) # -&gt; True
  
  not(0) # -&gt; True
  not(1) # -&gt; False
  not(0, 0, 0) # -&gt; False
  not("False") # -&gt; False
  
  function = not # -&gt; Syntax Error
  </code></pre>
  
  <p>Why does this exist for "not", and not something like "or"? Is there a way I can capture the not function into a variable / do other manipulation with not as a function?</p>
  
  <p>This question was mostly prompted by attempting to find a single function to invert a list in a map call, even if it is an internal function</p>