¿Cómo configurar la versión predeterminada de Python a 3.x en OS X?

Estoy corriendo Mountain Lion y la versión básica predeterminada de Python es 2.7. Descargué Python 3.3 y quiero configurarlo como predeterminado.

Actualmente:

$ python version 2.7.5 $ python3.3 version 3.3 

¿Cómo lo configuro para que cada vez que ejecute $ python se abra 3.3?

Cambiar la versión predeterminada de Python en todo el sistema rompería algunas aplicaciones que dependen de python2.

Puede alias los comandos en la mayoría de los shells, Mac OS X usa bash de forma predeterminada, si también lo pone en su ~/.bash_profile :

 alias python='python3' 

python comando python ahora se refiere a python3 . Si quieres el python original (que se refiere a python2 ), puedes escapar del alias, es decir, al hacer \python se iniciará python2 sin tocar el alias.

Si lanzas intérpretes más a menudo (yo lo hago) , mejor es:

 alias 2='python2' alias 3='python3' 

Consejo: En lugar de hacer:

 #!/usr/bin/env python 

utilizar:

 #!/usr/bin/env python3 

El sistema utilizará python3 para ejecutar ejecutables de python.

Puedes resolverlo por enlace simbólico.

 unlink /usr/local/bin/python ln -s /usr/local/bin/python3.3 /usr/local/bin/python 

Vaya a ‘Aplicaciones’, ingrese a la carpeta ‘Python’, debería haber un script de bash llamado ‘Update Shell Profile.command’ o similar. Ejecuta ese script y debería hacerlo.

Actualización: parece que no deberías actualizarlo: ¿cómo cambiar la versión de python predeterminada?

Creo que la mayoría de las personas que han llegado aquí están usando ZSH a través de su tiempo o lo que sea, y eso nos lleva a esta respuesta .

Tienes que agregar / modificar tus comandos en ~/.zshrc en ~/.zshrc lugar.

No estoy seguro de si está disponible en OS X, pero en Linux haría uso del comando del module . Ver aqui

Configure el modulefile correctamente, luego agregue algo como esto a su archivo rc (por ejemplo, ~ / .bashrc):

 module load python3.3 

Esto hará que sus rutas se cambien según sea necesario cuando inicie sesión sin afectar los valores predeterminados del sistema.

Creo que cuando instala Python, coloca las declaraciones de ruta de exportación en su archivo ~ / .bash_profile. Entonces, si ya no tiene intención de usar Python 2, simplemente puede eliminar esa statement desde allí. Alias ​​como se indicó anteriormente es también una gran manera de hacerlo.

Aquí es cómo eliminar la referencia de ~ / .bash_profile – vim ./.bash_profile – eliminar la referencia (AKA algo como: export PATH = “/ Users / bla / anaconda: $ PATH”) – guardar y salir – fuente ./ .bash_profile para guardar los cambios

Ir al tipo de terminal:

 alias python=python3.x 

Esto configurará el python predeterminado como python3.x

Lo siguiente me funcionó.

 cd /usr/local/bin mv python python.old ln -s python3 python 

Para mí, la solución fue usar PyCharm y configurar la versión de python predeterminada a la que necesito para trabajar.

instale PyCharm y vaya al archivo ==> preferencias para el nuevo proyecto, luego elija el intérprete que desee para sus proyectos, en este caso Python 3.3

Abra el archivo ~ / .bash_profile .

 vi ~/.bash_profile 

Luego coloca el alias de la siguiente manera:

 alias python='python3' 

Ahora guarde el archivo y luego ejecute el archivo ~ / .bash_profile .

 source ~/.bash_profile 

Enhorabuena !!! Ahora, puedes usar python3 escribiendo python .

 python --version 

Python 3.7.3

Si está utilizando un virtualenvwrapper , puede ubicarlo usando el which virtualenvwrapper.sh , luego abrirlo usando vim o cualquier otro editor y luego cambiar lo siguiente

 # Locate the global Python where virtualenvwrapper is installed. if [ "${VIRTUALENVWRAPPER_PYTHON:-}" = "" ] then VIRTUALENVWRAPPER_PYTHON="$(command \which python)" fi 

Cambie la línea VIRTUALENVWRAPPER_PYTHON="$(command \which python)" a VIRTUALENVWRAPPER_PYTHON="$(command \which python3)" .

Si usa macports, no necesita jugar con alias o variables de entorno, simplemente use el método que macports ya ofrece, explicado por esta pregunta y respuesta:

Cómo: Macports seleccionar python

TL; DR:

 sudo port select --set python python27