title: Why do I get different python version for implicit and explicit localhost
body: <p>I have both python2.7 and python3.7 in my mac and <em>ansible is installed using python3</em>. 
  Python version and ansible version returns below:</p>
  
  <pre><code>$ python -V
  Python 2.7.16
  $
  $ /usr/bin/env python -V
  Python 2.7.16
  $
  $ /usr/bin/python -V
  Python 2.7.16
  $
  $ ansible --version
  ansible 2.9.7
    config file = None
    configured module search path = ['/Users/demo/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
    ansible python module location = /Users/demo/Library/Python/3.7/lib/python/site-packages/ansible
    executable location = /Users/demo/Library/Python/3.7/bin/ansible
    python version = 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 16:52:21) [Clang 6.0 (clang-600.0.57)]
  </code></pre>
  
  <p>Also have an inventory <code>hosts</code> with explicit localhost configuration.</p>
  
  <pre><code>localhost ansible_connection=local 
  </code></pre>
  
  <p>I understand that setting <code>ansible_python_interpreter</code> for the inventory will use the specific version but wondering why I get two different python versions for below cases that use either implicit or explicit localhost. My understanding was that for both cases ansible will use the default python version.</p>
  
  <pre><code>$ ansible localhost -m setup | grep ansible_python_version
  [WARNING]: No inventory was parsed, only implicit localhost is available
          "ansible_python_version": "3.7.3",
  $
  $ ansible localhost -i hosts -m setup | grep ansible_python_version
  [WARNING]: Platform darwin on host localhost is using the discovered Python interpreter at /usr/bin/python, but future installation of another Python
  interpreter could change this. See https://docs.ansible.com/ansible/2.9/reference_appendices/interpreter_discovery.html for more information.
          "ansible_python_version": "2.7.16",
  </code></pre>