title: What is the advantage of "#!/usr/bin/env python" in the shebang rather than just calling the "#!python" interpreter?
body: <p>I understand the difference between starting a python script like:</p>
  
  <pre><code>#!/usr/bin/env python
  </code></pre>
  
  <p>or </p>
  
  <pre><code>#!/usr/bin/python
  </code></pre>
  
  <p>From what I understood, just executes python as we would do in our shell, so it looks in <code>$PATH</code>. The second one is not a fixed path, which has the inconvenient that in a different system the python interpreter might be located in another path.</p>
  
  <p>My question is, why do we need <code>env</code>? Why can we just do:</p>
  
  <pre><code>#!python
  </code></pre>
  
  <p>This works perfectly fine in my computer? Is there a reason to prefer calling <code>env</code>?</p>