¿Por qué virtualenv hereda $ PYTHONPATH de mi shell?

Así que estoy migrando todas mis herramientas de python2 a python3.4 en una máquina Ubuntu 14.04. Hasta ahora he hecho lo siguiente:

Python alias a python3 en mi zshrc solo para mi usuariopip3 instalado en el sistema en sí (pero de todos modos usaré virtualenvs para todo, así que realmente no lo usaré)cambié mi alias virtualenvwrapper "make" amkvirtualenv --python=/usr/bin/python3 ('workon' se invoca a continuación como 'v')

Ahora, curiosamente, y puede verlo claramente a continuación, ejecutar python3 desde un entorno activado virtualenv todavía hereda mi $ PYTHONPATH, que todavía está configurado para todas mis rutas de python2. Esto causa estragos al instalar / ejecutar programas en mi virtualenv porque las rutas de python3 aparecen DESPUÉS de las antiguas rutas de python2, por lo que los módulos de python2 se importan primero en mis programas. Anular mi $ PYTHONPATH a '' antes de comenzar virtualenv corrige esto y mis programas comienzan como se esperaba. Pero mis preguntas son:

¿Es esta herencia de $ PYTHONPATH en virtualenvs normal? ¿No derrota todo el propósito?¿Por qué establecer $ PYTHONPATH como env-var en el shell cuando python ya maneja sus propias rutas internamente?¿Estoy usando $ PYTHONPATH correctamente? ¿Debería configurarlo en mi 'zshrc' para enumerar solo mis adiciones personales ($ HOME / dev) y no las ubicaciones redundantes '/ usr / local / lib /'?Puedo exportar fácilmente una ruta alternativa de python3 para usar con mis virtualenvs justo antes de invocarlos, y restablecerlos cuando termine, pero ¿es esta la mejor manera de solucionar esto?
    ○ echo $PYTHONPATH
    /usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/home/brian/dev

    brian@zeus:~/.virtualenvs
    ○ python2
    Python 2.7.6 (default, Mar 22 2014, 22:59:56)
    [GCC 4.8.2] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import sys, pprint
    >>> pprint.pprint(sys.path)
    ['',
     '/usr/local/lib/python2.7/dist-packages/pudb-2013.3.4-py2.7.egg',
     '/usr/local/lib/python2.7/dist-packages/Pygments-1.6-py2.7.egg',
     '/usr/local/lib/python2.7/dist-packages/urwid-1.1.1-py2.7-linux-x86_64.egg',
     '/usr/local/lib/python2.7/dist-packages/pythoscope-0.4.3-py2.7.egg',
     '/usr/local/lib/python2.7/site-packages',
     '/usr/local/lib/python2.7/dist-packages',
     '/usr/lib/python2.7/dist-packages',
     '/home/brian/dev',
     '/usr/lib/python2.7',
     '/usr/lib/python2.7/plat-x86_64-linux-gnu',
     '/usr/lib/python2.7/lib-tk',
     '/usr/lib/python2.7/lib-old',
     '/usr/lib/python2.7/lib-dynload',
     '/usr/lib/python2.7/dist-packages/PILcompat',
     '/usr/lib/python2.7/dist-packages/gst-0.10',
     '/usr/lib/python2.7/dist-packages/gtk-2.0',
     '/usr/lib/pymodules/python2.7',
     '/usr/lib/python2.7/dist-packages/ubuntu-sso-client',
     '/usr/lib/python2.7/dist-packages/ubuntuone-client',
     '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol',
     '/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode']
    >>>

    brian@zeus:~/.virtualenvs
    ○ v py3venv
    (py3venv)
    brian@zeus:~/.virtualenvs
    ○ python3
    Python 3.4.0 (default, Apr 11 2014, 13:05:11)
    [GCC 4.8.2] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import sys, pprint
    >>> pprint.pprint(sys.path)
    ['',
     '/usr/local/lib/python2.7/site-packages',
     '/usr/local/lib/python2.7/dist-packages',
     '/usr/lib/python2.7/dist-packages',
     '/home/brian/dev',
     '/home/brian/.virtualenvs/py3venv/lib/python3.4',
     '/home/brian/.virtualenvs/py3venv/lib/python3.4/plat-x86_64-linux-gnu',
     '/home/brian/.virtualenvs/py3venv/lib/python3.4/lib-dynload',
     '/usr/lib/python3.4',
     '/usr/lib/python3.4/plat-x86_64-linux-gnu',
     '/home/brian/.virtualenvs/py3venv/lib/python3.4/site-packages']
    >>>
    (py3venv)

Respuestas a la pregunta(3)

Su respuesta a la pregunta