Python ist eine der am weitesten verbreiteten Programmiersprachen der Welt. Mit seiner einfachen und leicht zu erlernenden Syntax ist Python eine beliebte Wahl für Anfänger und erfahrene Entwickler. Python ist eine ziemlich vielseitige Programmiersprache. Es kann verwendet werden, um alle Arten von Anwendungen zu erstellen, von einfachen Skripten bis hin zu ausgeklügelten Algorithmen für maschinelles Lernen.
Debian 10 enthält die Python-Version 3.7, die mit apt
installiert oder aktualisiert werden kann Werkzeug.
Zum Zeitpunkt der Erstellung dieses Artikels ist Python 3.8 die neueste Hauptversion der Python-Sprache. Es enthält viele neue Funktionen wie Zuweisungsausdrücke, Nur-Positions-Parameter, Unterstützung für F-Strings und mehr. Python 3.8 ist nicht in den standardmäßigen Debian 10-Repositories verfügbar.
Dieses Tutorial behandelt die Installation von Python 3.8 auf Debian 10. Wir zeigen Ihnen auch, wie Sie eine virtuelle Umgebung erstellen.
Installieren von Python 3.8 auf Debian 10 #
Das Erstellen von Python 3.8 auf Debian ist ein relativ unkomplizierter Prozess und dauert nur wenige Minuten.
-
Installieren Sie zunächst die Pakete, die zum Erstellen des Python-Quellcodes erforderlich sind:
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libsqlite3-dev libreadline-dev libffi-dev curl libbz2-dev
-
Laden Sie den Quellcode der neuesten Version von der Python-Downloadseite mit wget oder
curl
herunter . Zum Zeitpunkt der Erstellung dieses Artikels war die neueste Version3.8.2
:curl -O https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tar.xz
-
Wenn der Download abgeschlossen ist, extrahieren Sie den Tarball:
tar -xf Python-3.8.2.tar.xz
-
Navigieren Sie zum Python-Quellverzeichnis und führen Sie
configure
aus Skript:cd Python-3.8.2
./configure --enable-optimizations
Das Skript führt eine Reihe von Überprüfungen durch, um sicherzustellen, dass alle Abhängigkeiten auf Ihrem System vorhanden sind. Die
--enable-optimizations
Option optimiert die Python-Binärdatei durch Ausführen mehrerer Tests, wodurch der Build-Prozess langsamer wird. -
Führen Sie
make
aus um den Build-Prozess zu starten:make -j 4
Ändern Sie das
-j
um der Anzahl der Kerne in Ihrem Prozessor zu entsprechen. Sie finden die Nummer, indem Sienproc
eingeben . -
Sobald der Build abgeschlossen ist, installieren Sie die Python-Binärdateien, indem Sie den folgenden Befehl als Benutzer mit Sudo-Zugriff ausführen:
sudo make altinstall
Verwenden Sie nicht das standardmäßige
make install
da es das Standardsystempython3
überschreibt binär. -
An diesem Punkt ist Python 3.8 auf Ihrem Debian-System installiert und einsatzbereit. Sie können dies überprüfen, indem Sie Folgendes eingeben:
python3.8 --version
Python 3.8.2
Erstellen einer virtuellen Umgebung #
Die virtuelle Python-Umgebung ist eine eigenständige Verzeichnisstruktur, die eine Python-Installation und eine Reihe zusätzlicher Pakete enthält. Es ermöglicht Ihnen, Python-Module an einem isolierten Ort für ein bestimmtes Projekt zu installieren, anstatt global installiert zu werden. Auf diese Weise müssen Sie sich keine Gedanken über Auswirkungen auf andere Python-Projekte machen.
In diesem Beispiel erstellen wir ein neues Python 3.8-Projekt namens my_app
im Home-Verzeichnis des Benutzers.
Erstellen Sie zuerst das Projektverzeichnis und wechseln Sie dorthin:
mkdir ~/my_app && cd ~/my_app
Führen Sie im Projektstamm den folgenden Befehl aus, um eine virtuelle Umgebung mit dem Namen my_app_venv
zu erstellen :
python3.8 -m venv my_app_venv
Umgebung aktivieren:
source my_app_venv/bin/activate
Nach der Aktivierung wird dem Shell-Prompt der Name der Umgebung vorangestellt. Beginnend mit Python 3.4 wird beim Erstellen von virtuellen Umgebungen pip standardmäßig der Paketmanager für Python installiert.
Innerhalb der virtuellen Umgebung können Sie pip
verwenden statt pip3.8
und python
statt python3.8
:
python -v
Python 3.8.1
Wenn Sie mit Ihrer Arbeit zum Deaktivieren der Umgebung fertig sind, geben Sie deactivate
ein , und Sie kehren zu Ihrer normalen Shell zurück.
deactivate