Fügen Sie /usr/local/bin
hinzu zu Ihrem PATH
Umgebungsvariable, früher in der Liste als /usr/bin
.
Im Allgemeinen geschieht dies in der rc-Datei Ihrer Shell, z. für Bash würden Sie dies in .bashrc
einfügen :
export PATH="/usr/local/bin:$PATH"
Dadurch sucht Ihre Shell zuerst nach python
in /usr/local/bin
, bevor es mit dem in /usr/bin
geht .
(Das bedeutet natürlich, dass Sie auch /usr/local/bin/python
haben müssen zeigen Sie auf python2.7
- falls noch nicht geschehen, müssen Sie es symbolisch verlinken.)
Geben Sie den Befehl
einwhich python
//output:
/usr/bin/python
cd /usr/bin
ls -l
Hier können Sie so etwas sehen
lrwxrwxrwx 1 root root 9 Mar 7 17:04 python -> python2.7
Ihr Standard-Python2.7 ist mit dem Text „Python“ verknüpft
Entfernen Sie also die Softlink-Python
sudo rm -r python
Wiederholen Sie dann den obigen Befehl
ls -l
Sie können sehen, dass der Softlink entfernt wurde
-rwxr-xr-x 1 root root 3670448 Nov 12 20:01 python2.7
Erstellen Sie dann einen neuen Softlink für python3.6
ln -s /usr/bin/python3.6 python
Versuchen Sie dann den Befehl python
im Terminal
//output:
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Geben Sie help
ein , copyright
, credits
oder license
für weitere Informationen.
Wahrscheinlich möchten Sie Ihr Standard-Python eigentlich gar nicht ändern.
Ihre Distribution hat ein Standard-System-Python in /usr/bin
installiert , und kann Skripte haben, die davon abhängen, dass dies vorhanden ist und von #! /usr/bin/env python
ausgewählt wird . Das können Sie normalerweise kommen Sie mit der Ausführung von Python 2.6-Skripten in 2.7 davon, aber wollen Sie es riskieren?
Darüber hinaus mit /usr/bin
herumzualbern kann die Fähigkeit Ihres Paketmanagers beeinträchtigen, Pakete zu verwalten. Und die Reihenfolge der Verzeichnisse in Ihrem PATH
ändern wird neben Python noch viele andere Dinge beeinflussen. (Tatsächlich ist es üblicher, /usr/local/bin
zu haben vor /usr/bin
, und es kann das sein, was Sie tatsächlich wollen – aber wenn Sie es umgekehrt haben, gibt es vermutlich einen guten Grund dafür.)
Aber das brauchen Sie nicht um Ihr Standard-Python zu ändern, damit das System 2.7 ausführt, wenn Sie python
eingeben .
Zuerst können Sie einen Shell-Alias einrichten:
alias python=/usr/local/bin/python2.7
Geben Sie das an einer Eingabeaufforderung ein oder geben Sie es in Ihren ~/.bashrc
ein wenn Sie möchten, dass die Änderung dauerhaft ist, und jetzt, wenn Sie geben Sie python
ein Es führt die von Ihnen gewählte Version 2.7 aus, aber wenn ein Programm auf Ihrem System versucht, ein Skript mit /usr/bin/env python
auszuführen es läuft mit dem Standard 2.6.
Alternativ können Sie einfach eine virtuelle Umgebung aus Ihrer 2.7 erstellen (oder separate Venvs für verschiedene Projekte) und Ihre Arbeit innerhalb der Venv erledigen.