Estoy ejecutando 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 lo ejecute $ python
se abra 3.3?
python
python-3.x
macos
install
Marcus
fuente
fuente
pyenv
.Respuestas:
Cambiar la versión predeterminada del ejecutable de Python en todo el sistema podría romper algunas aplicaciones que dependen de python2.
Sin embargo, puede asignar alias a los comandos en la mayoría de los shells, ya que los shells predeterminados en macOS (bash en 10.14 e inferior; zsh en 10.15) comparten una sintaxis similar. Puede poner alias python = 'python3' en su
~/.profile
, y luego ingresar~/.profile
en su~/.bash_profile
y / o su~/.zsh_profile
con una línea como:De esta manera, tu alias funcionará en todos los shells.
Con esto, el
python
comando ahora invocapython3
. Si desea invocar el pitón "original" (que se refiere a python2 ) en ocasiones, puede usarlocommand python
, lo que dejará el alias intacto y funcionará en todos los shells.Si inicia intérpretes con más frecuencia (lo hago) , siempre puede crear más alias para agregar también, es decir:
Consejo: para secuencias de comandos, en lugar de usar un shebang como:
utilizar:
De esta manera, el sistema usará python3 para ejecutar ejecutables de python .
fuente
alias python=python3
y luego ejecutarpython
en mi terminal en osx el capitan no funcionó para mí. Intenté guardarlo tanto ~ / .bash_aliases como ~ / .bash_profile.source ~/.bash_profile
después de editar el~/.bash_profile
archivo.alias pip='pip3.6'
Puedes resolverlo por enlace simbólico.
fuente
unlink
lugar derm
eliminar enlaces simbólicos (si agrega accidentalmente una barra inclinada finalrm
podría tener algunos malos resultados). Alternativamente, podría hacer loln -s -f ...
que debería sobrescribir el enlace simbólico actual.python
serpython2.7
?unlink: /usr/bin/python: Operation not permitted
ln -s...
con/local/
).Abra el archivo ~ / .bash_profile .
Luego ponga el alias de la siguiente manera:
Ahora guarde el archivo y luego ejecute el archivo ~ / .bash_profile .
Felicidades !!! Ahora, puede usar python3 escribiendo python .
Python 3.7.3
fuente
source ~/.bash_profile
cada vez que vuelva a abrir mi terminal? Vuelve a python2 una vez que cierro y abro la terminal nuevamente.Ir al tipo de terminal:
Esto configurará python predeterminado como python3.x
fuente
Lo siguiente funcionó para mí
fuente
Llegué un poco tarde al juego en este caso, pero pensé que debería publicar una respuesta actualizada ya que me encontré con este problema. Tenga en cuenta que esto solo se aplicará a una configuración basada en Mac (no lo he probado con Windows o cualquier versión de Linux).
La forma más sencilla de hacer que esto funcione es instalar Python a través de Brew . Si no tiene brew instalado, primero deberá hacerlo. Una vez instalado, haga lo siguiente en la terminal:
Esto instalará Python 3. Después de que esté instalado, ejecute esto:
Verá todos los enlaces creados por brew para su instalación de Python. Se verá algo como esto:
La primera fila en este ejemplo muestra el
python3
enlace simbólico. Para configurarlo como elpython
enlace simbólico predeterminado, ejecute lo siguiente:Una vez configurado, puedes hacer:
y debería mostrar:
Tendrá que volver a cargar su terminal de terminal actual para que pueda usar el nuevo enlace simbólico en ese shell, sin embargo, todas las sesiones de shell recién abiertas lo (deberían) usar automáticamente. Para probar esto, abra un nuevo terminal y ejecute lo siguiente:
fuente
Vaya a 'Aplicaciones', ingrese a la carpeta 'Python', debería haber un script bash llamado 'Update Shell Profile.command' o similar. Ejecute ese script y debería hacerlo.
Actualización: Parece que no deberías actualizarla: ¿cómo cambiar la versión predeterminada de Python?
fuente
Esto funcionó para mí. Agregué alias y reinicié mi terminal :
fuente
Creo que la mayoría de las personas que llegaron aquí están usando ZSH a través de iterm o lo que sea, y eso te lleva a esta respuesta .
En su lugar, debe agregar / modificar sus comandos
~/.zshrc
.fuente
No estoy seguro de si esto está disponible en OS X, pero en Linux haría uso del
module
comando. Vea aquí .Configure el archivo de módulo correctamente, luego agregue algo como esto a su archivo rc (por ejemplo, ~ / .bashrc):
Esto hará que sus rutas se cambien según sea necesario cuando inicie sesión sin afectar los valores predeterminados del sistema.
fuente
Creo que cuando instala Python, coloca las instrucciones 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 declaración desde allí. El alias como se indicó anteriormente también es una excelente manera de hacerlo.
Aquí se explica cómo eliminar la referencia de ~ / .bash_profile - vim ./.bash_profile - eliminar la referencia (también conocida como: export PATH = "/ Users / bla / anaconda: $ PATH") - guardar y salir - source ./ .bash_profile para guardar los cambios
fuente
hecho.
fuente
La manera CORRECTA e INCORRECTA de configurar Python 3 como predeterminado en una Mac
En este artículo, el autor analiza tres formas de configurar Python predeterminado:
Todas estas formas están funcionando. Tú decides cuál es mejor.
fuente
Si está utilizando un
virtualenvwrapper
, puede localizarlo usandowhich virtualenvwrapper.sh
, luego abrirlo usandovim
o cualquier otro editor y luego cambiar lo siguienteCambia la línea
VIRTUALENVWRAPPER_PYTHON="$(command \which python)"
aVIRTUALENVWRAPPER_PYTHON="$(command \which python3)"
.fuente
Para mí, la solución fue usar PyCharm y configurar la versión predeterminada de Python a la que necesito para trabajar.
instale PyCharm y vaya al archivo ==> preferencias para el nuevo proyecto, luego elija el intérprete que desea para sus proyectos, en este caso python 3.3
fuente
Si usa macports, no necesita jugar con alias o variables de entorno, solo use el método que ya ofrece macports, explicado en estas preguntas y respuestas:
Cómo: Macports selecciona Python
TL; DR:
fuente
Si está utilizando macports, esa es una manera más fácil de hacer:
correr:
port install python37
después de la instalación, establezca el valor predeterminado:
sudo port select --set python python37
sudo port select --set python3 python37
reinicie su ventana de cmd, terminado.
fuente
Bueno ... es un poco viejo. Pero aún merece una buena respuesta.
Y lo bueno es que no quieres tocar el Python predeterminado en Mac.
Instale cualquier versión de Python que necesite a través de Homebrew o lo que sea y úsela en virtualenv. Virtualenv a menudo se considera como una basura, pero sigue siendo mucho mejor que cambiar la versión de Python en todo el sistema (es probable que macOS se proteja de tales acciones) o en todo el usuario, en todo el bash ... lo que sea. Solo olvídate del Python predeterminado. El uso de parques infantiles como venv es lo que su sistema operativo estará más agradecido.
El caso es, por ejemplo, que muchas distribuciones modernas de Linux eliminan Python2 instalado de fábrica, dejando solo Python3 en el sistema. Pero cada vez que intentas instalar algo viejo con python2 como dependencia ... espero que entiendas lo que quiero decir. A un buen desarrollador no le importa. Los buenos desarrolladores crean parques infantiles limpios con la versión de Python que desean.
fuente
Los usuarios de Mac solo necesitan ejecutar el siguiente código en la terminal
3.xx debería ser la nueva versión de Python.
Esto actualizará todos los enlaces del sistema.
fuente
Las sugerencias de alias python a python3 causarán problemas con los entornos virtuales que configuran la versión de python (por ejemplo: pyenv). Con pyenv, puede configurar la versión globalmente de esta manera:
y luego, en cualquier proyecto específico, puede crear un archivo de versión .python que tenga la versión de python dentro de él:
En mi opinión, esta es la mejor manera de administrar múltiples versiones de Python en un sistema.
fuente