482 Stimmen

Wie kann die Standardversion von Python auf 3.x in OS X festgelegt werden?

Ich verwende Mountain Lion und die grundlegende Standard-Python-Version ist 2.7. Ich habe Python 3.3 heruntergeladen und möchte es als Standard festlegen.

Derzeit:

$ python
    Version 2.7.5
$ python3.3
    Version 3.3

Wie kann ich es einstellen, dass jedes Mal, wenn ich $ python ausführe, sich 3.3 öffnet?

661voto

Santosh Kumar Punkte 24191

Das Ändern der Standardversion des Python-Executables könnte systemweit einige Anwendungen beschädigen, die von Python 2 abhängig sind.

Sie können jedoch die Befehle in den meisten Shells aliasen, da die Standardshells in macOS (bash in 10.14 und darunter; zsh in 10.15) eine ähnliche Syntax haben. Sie könnten alias python='python3' in Ihrer ~/.profile platzieren und dann Ihre ~/.profile in Ihrem ~/.bash_profile und/oder Ihrem ~/.zsh_profile mit einer Zeile wie folgt sourcen:

[ -e ~/.profile ] && . ~/.profile

Auf diese Weise funktioniert Ihr Alias über verschiedene Shells hinweg.

Mit diesem Befehl wird python nun zu python3. Wenn Sie gelegentlich das "originale" Python (das sich auf Python 2 bezieht) aufrufen möchten, können Sie command python verwenden, um das Alias unverändert zu lassen. Dies funktioniert in allen Shells.

Wenn Sie Interpreter häufiger starten (wie ich), können Sie auch weitere Aliase hinzufügen, z.B.:

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

Tipp: Für Skripte verwenden Sie anstelle von Shebangs wie:

#!/usr/bin/env python

verwenden Sie:

#!/usr/bin/env python3

Dadurch wird das System python3 zum Ausführen von Python-Executable verwenden.

227voto

Shin Kim Punkte 4273

Sie können es durch einen symbolischen Link lösen.

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

149voto

Ananta Chandra Das Punkte 1479

Öffnen Sie die Datei ~/.bash_profile.

vi ~/.bash_profile

Dann fügen Sie das Alias wie folgt hinzu:

alias python='python3'

Speichern Sie nun die Datei und führen Sie dann die Datei ~/.bash_profile aus.

source ~/.bash_profile

Herzlichen Glückwunsch !!! Jetzt können Sie python3 verwenden, indem Sie python eingeben.

python --version

Python 3.7.3

136voto

sknight Punkte 1753

Ich bin auch auf dieses Problem gestoßen, daher dachte ich, dass ich eine aktualisierte Antwort veröffentlichen sollte. Bitte beachten Sie, dass dies nur für eine Mac-basierte Einrichtung gilt (ich habe es nicht mit Windows oder einer Linux-Variante ausprobiert). Der einfachste Weg, um dies zum Laufen zu bringen, besteht darin, Python über Brew zu installieren. Wenn Sie brew nicht installiert haben, müssen Sie das zuerst tun. Nach der Installation führen Sie Folgendes im Terminal aus:

brew install python

Dies installiert Python 3. Nach der Installation führen Sie dies aus:

ls -l /usr/local/bin/python*

Sie sehen alle Links, die von brew zu seiner Python-Installation erstellt wurden. Es wird ungefähr so aussehen:

lrwxr-xr-x  1 username  admin  36 Oct  1 13:35 /usr/local/bin/python3@ -> ../Cellar/python/3.7.4_1/bin/python3
lrwxr-xr-x  1 username  admin  43 Oct  1 13:35 /usr/local/bin/python3-config@ -> ../Cellar/python/3.7.4_1/bin/python3-config
lrwxr-xr-x  1 username  admin  38 Oct  1 13:35 /usr/local/bin/python3.7@ -> ../Cellar/python/3.7.4_1/bin/python3.7
lrwxr-xr-x  1 username  admin  45 Oct  1 13:35 /usr/local/bin/python3.7-config@ -> ../Cellar/python/3.7.4_1/bin/python3.7-config
lrwxr-xr-x  1 username  admin  39 Oct  1 13:35 /usr/local/bin/python3.7m@ -> ../Cellar/python/3.7.4_1/bin/python3.7m
lrwxr-xr-x  1 username  admin  46 Oct  1 13:35 /usr/local/bin/python3.7m-config@ -> ../Cellar/python/3.7.4_1/bin/python3.7m-config

Die erste Zeile in diesem Beispiel zeigt den python3 Symlink. Um ihn als den Standard-python Symlink zu setzen, führen Sie Folgendes aus:

ln -s -f /usr/local/bin/python3 /usr/local/bin/python

Ebenso können Sie den pip Symlink setzen

ln -s -f /usr/local/bin/pip3 /usr/local/bin/pip

Sie müssen Ihre aktuelle Terminalshell neu laden, um den neuen Symlink in dieser Shell zu verwenden. Führen Sie diesen Befehl aus, um Ihre Shell neu zu laden:

exec $SHELL -l

Jetzt sind Sie bereit. Jetzt können Sie Folgendes tun:

which python

und es sollte anzeigen:

/usr/local/bin/python

Alle neu geöffneten Shell-Sitzungen werden den neuen Symlink automatisch verwenden. Um dies zu testen, öffnen Sie eine neue Terminalshell und führen Sie Folgendes aus:

python --version

36voto

Aditya Malviya Punkte 1869

Gehen Sie zum Terminal und geben Sie ein:

alias python=python3.x

Dadurch wird das Standard-Python als python3.x festgelegt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X