Schnellstart: Erstellen einer ersten Python-Web-App mit Visual Studio

In dieser fünf- bis zehnminütigen Einführung in Visual Studio als Python-IDE erstellen Sie eine einfache Python-Webanwendung, die auf dem Flask-Framework basiert. Sie erstellen das Projekt über einzelne Schritte, in denen Sie mehr über die grundlegenden Features von Visual Studio erfahren.

Wenn Sie Visual Studio noch nicht installiert haben, können Sie es auf der Seite Visual Studio-Downloads kostenlos herunterladen. Wählen Sie im Installer die Workload Python-Entwicklung aus.

Wenn Sie Visual Studio noch nicht installiert haben, können Sie es auf der Seite Visual Studio-Downloads kostenlos herunterladen. Wählen Sie im Installer die Workload Python-Entwicklung aus.

Wenn Sie Visual Studio noch nicht installiert haben, können Sie es auf der Seite Visual Studio-Downloads kostenlos herunterladen. Wählen Sie im Visual Studio-Installer die Workload Python-Entwicklung aus, und wählen Sie in den Installationsdetails die Option Python-Webunterstützung aus.

Screenshot: Visual Studio-Installer mit ausgewählter Workload „Python-Entwicklung“ und Option „Python-Webunterstützung“.

Erstellen eines Projekts

In den folgenden Schritten wird ein leeres Projekt erstellt, das als Container für die Anwendung fungiert:

  1. Öffnen Sie Visual Studio 2017.

  2. Klicken Sie oben in der Menüleiste auf Datei > Neu > Projekt.

  3. Geben Sie im Dialogfeld Neues Projekt „Python-Webprojekt“ in das Suchfeld im oberen rechten Bereich ein, wählen Sie Webprojekt aus der mittleren Liste aus, geben Sie dem Projekt einen Namen wie „HelloPython“ (HalloPython), und klicken Sie dann auf OK.

    Dialogfeld „Neues Projekt“ mit der Auswahl „Python-Webprojekt“

    Wenn die Python-Projektvorlagen nicht angezeigt werden, führen Sie den Visual Studio-Installer aus, klicken Sie auf Mehr > Ändern, wählen Sie die Workload Python-Entwicklung aus, und klicken Sie dann auf Ändern.

    Arbeitsauslastung zur Python-Entwicklung im Visual Studio-Installationsprogramm

  4. Das neue Projekt wird im Projektmappen-Explorer im rechten Bereich geöffnet. Zu diesem Zeitpunkt ist das Projekt noch leer und enthält keine anderen Dateien.

    Projektmappen-Explorer mit dem neu erstellten leeren Projekt

  1. Öffnen Sie Visual Studio 2019.

  2. Wählen Sie auf dem Startbildschirm Neues Projekt erstellen aus.

  3. Geben Sie oben im Dialogfeld Neues Projekt erstellen in das Suchfeld „Python web“ ein, wählen Sie in der Mitte der Liste Webprojekt aus, und klicken Sie auf Weiter:

    Screenshot: Bildschirm „Neues Projekt erstellen“ mit ausgewählter Option „Python-Webprojekt“. Wenn die Python-Projektvorlagen nicht angezeigt werden, führen Sie den Visual Studio-Installer aus, und wählen Sie Mehr > Ändern aus. Wählen Sie die Workload Python-Entwicklung und dann Ändern aus.

    Arbeitsauslastung zur Python-Entwicklung im Visual Studio-Installationsprogramm

  4. Geben Sie im daraufhin angezeigten Dialogfeld Neues Projekt konfigurieren als Projektname „HelloPython“ ein, wählen Sie einen Speicherort aus, und klicken Sie auf Erstellen. (Der Projektmappenname wird automatisch entsprechend dem Projektnamen festgelegt.)

    Dialogfeld „Neues Projekt konfigurieren“

  5. Das neue Projekt wird im Projektmappen-Explorer im rechten Bereich geöffnet. Zu diesem Zeitpunkt ist das Projekt noch leer und enthält keine anderen Dateien.

    Screenshot: Das neu erstellte leere Projekt im Projektmappen-Explorer.

  1. Öffnen Sie Visual Studio 2022.

  2. Wählen Sie auf dem Startbildschirm Neues Projekt erstellen aus.

  3. Geben Sie im Dialogfeld Neues Projekt erstellen oben im Suchfeld den Suchbegriff „Python Web“ ein. Wählen Sie Webprojekt aus der Liste und dann Weiter aus:

    Screenshot: Bildschirm „Neues Projekt erstellen“ mit ausgewähltem Python-Webprojekt.

    Wenn die Python-Webprojektvorlagen nicht angezeigt werden, wählen Sie Tools > Tools und Features abrufen aus, um den Visual Studio-Installer auszuführen. Wählen Sie im Installer die Workload Python-Entwicklung aus, und wählen Sie in den Installationsdetails die Option Python-Webunterstützung aus. Wählen Sie dann Ändern aus.

  4. Geben Sie im Dialogfeld Neues Projekt konfigurieren „HelloPython“ als Projektname ein, geben Sie einen Speicherort an, und wählen Sie dann Erstellen aus. Der Projektmappenname wird automatisch aktualisiert, damit er mit dem Projektnamen übereinstimmt.

    Screenshot: Dialogfeld „Neues Projekt konfigurieren“.

Das neue Projekt wird im Projektmappen-Explorer im rechten Bereich geöffnet. Zu diesem Zeitpunkt ist das Projekt noch leer und enthält keine anderen Dateien.

Screenshot: Projektmappen-Explorer mit dem neu erstellten leeren Projekt.

Frage: Welche Vorteile bestehen beim Erstellen eines Projekts für eine Python-Anwendung in Visual Studio?

Antwort: Python-Anwendungen werden in der Regel nur anhand von Ordnern und Dateien definiert, aber diese einfache Struktur kann mit zunehmender Größe von Anwendungen mühsam werden. Anwendungen können automatisch generierte Dateien, JavaScript für Webanwendungen und andere Komponenten umfassen. Ein Visual Studio-Projekt kann Sie beim Verwalten dieser komplexen Struktur unterstützen.

Das Projekt, eine PYPROJ-Datei, identifiziert alle Quell- und Inhaltsdateien, die mit einem Projekt verknüpft sind. Die PYPROJ-Datei enthält Buildinformationen für jede Datei, verwaltet Informationen zur Integration in Quellcodeverwaltungssysteme und unterstützt Sie bei der Organisation Ihrer Anwendung in logische Komponenten.

Frage: Welche Funktion haben die im Projektmappen-Explorer angezeigten „Projektmappen“?

Antwort: Eine Visual Studio-Projektmappe ist ein Container, mit dem Sie ein Projekt oder mehrere verwandte Projekte als Gruppe verwalten können. Die Projektmappe speichert Konfigurationseinstellungen, die nicht projektspezifisch sind. Projekte in einer Projektmappe können auch aufeinander verweisen. Durch Ausführung eines Python-App-Projekts kann beispielsweise automatisch ein zweites Projekt erstellt werden, etwa eine C++-Erweiterung, die von der Python-App verwendet wird.

Installieren der Flask-Bibliothek

Web-Apps in Python verwenden fast immer eine der vielen verfügbaren Python-Bibliotheken, um Details auf unterer Ebene wie das Routing von Webanforderungen und Strukturieren von Antworten zu verarbeiten. Visual Studio stellt viele Vorlagen für Web-Apps bereit. Später in dieser Schnellstartanleitung werden Sie eine dieser Vorlagen verwenden.

Führen Sie folgende Schritte aus, um die Flask-Bibliothek in der standardmäßigen globalen Umgebung zu installieren, die Visual Studio für dieses Projekt verwendet.

  1. Erweitern Sie den Knoten Python-Umgebungen im Projekt, um die entsprechende Standardumgebung aufzurufen.

    Projektmappen-Explorer mit der Standardumgebung

  2. Klicken Sie mit der rechten Maustaste auf die Umgebung und dann auf Python-Paket installieren. Dieser Befehl öffnet das Fenster Python-Umgebungen in der Registerkarte Pakete.

  3. Geben Sie „Flask“ in das Suchfeld ein, und wählen Sie pip install flask from PyPI aus. Akzeptieren Sie die Aufforderungen zu Administratorberechtigungen, und beobachten Sie den Fortschritt im Fenster Ausgabe in Visual Studio. (Eine Aufforderung zur Erhöhung der Rechte wird angezeigt, wenn der Ordner „Pakete“ für die globale Umgebung sich in einem geschützten Bereich wie C:\Programme befindet.)

    Installieren der Flask-Bibliothek mithilfe von pip

  1. Erweitern Sie den Knoten Python-Umgebungen im Projekt, um die entsprechende Standardumgebung aufzurufen.

    Projektmappen-Explorer mit der Standardumgebung

  2. Klicken Sie mit der rechten Maustaste auf die Umgebung und dann auf Python-Pakete verwalten... . Dieser Befehl öffnet das Fenster Python-Umgebungen in der Registerkarte Pakete (PyPI) .

  3. Geben Sie in das Suchfeld „flask“ ein. Wenn unterhalb des Suchfelds Flask angezeigt wird, können Sie diesen Schritt überspringen. Wählen Sie andernfalls Run command: pip install flask (Ausführungsbefehl: pip install flask) aus. Akzeptieren Sie die Aufforderungen zu Administratorberechtigungen, und beobachten Sie den Fortschritt im Fenster Ausgabe in Visual Studio. (Eine Aufforderung zur Erhöhung der Rechte wird angezeigt, wenn der Ordner „Pakete“ für die globale Umgebung sich in einem geschützten Bereich wie C:\Programme befindet.)

    Installieren der Flask-Bibliothek mithilfe von pip

  1. Erweitern Sie den Knoten Python-Umgebungen im Projekt, um die entsprechende Standardumgebung aufzurufen.

    Screenshot: Standardumgebung im Projektmappen-Explorer.

  2. Klicken Sie mit der rechten Maustaste auf die Umgebung, und wählen Sie Python-Pakete verwalten aus. Dieser Befehl öffnet das Fenster Python-Umgebungen in der Registerkarte Pakete (PyPI).

  3. Geben Sie in das Suchfeld „flask“ ein. Wenn unterhalb des Suchfelds Flask angezeigt wird, können Sie diesen Schritt überspringen. Wählen Sie andernfalls Befehl ausführen: pip install flask aus.

    Screenshot: Installieren der Flask-Bibliothek mit „pip install“.

    Eine Eingabeaufforderung für erhöhte Rechte wird angezeigt, wenn sich der Ordner mit den globalen Umgebungspaketen in einem geschützten Bereich wie C:\Programme befindet. Akzeptieren Sie die Aufforderungen für Administratorrechte. Sie können den Fortschritt im Visual Studio-Fenster Ausgabe beobachten.

Nach der Installation wird die Bibliothek in der Umgebung im Projektmappen-Explorer angezeigt, d. h., Sie können sie in Python-Code verwenden.

Installierte Flask-Bibliothek, angezeigt im Projektmappen-Explorer

Installierte Flask-Bibliothek, angezeigt im Projektmappen-Explorer

Screenshot: Flask-Bibliothek ist installiert und wird im Projektmappen-Explorer angezeigt.

Hinweis

Statt Bibliotheken in der globalen Umgebung zu installieren, erstellen Entwickler in der Regel eine „virtuelle Umgebung“, in der Bibliotheken für ein bestimmtes Projekt installiert werden. Visual Studio-Vorlagen stellen diese Option in der Regel bereit. Dies wird unter Schnellstart: Erstellen eines Python-Projekts mithilfe einer Vorlage erläutert.

Frage: Wo erfahre ich mehr über andere verfügbare Python-Pakete?

Antwort: Besuchen Sie die Seite Python Package Index (Python-Paketindex).

Hinzufügen einer Codedatei

Nun können Sie Python-Code einfügen, um eine rudimentäre Web-App zu implementieren.

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Hinzufügen > Neues Element aus.

  2. Klicken Sie im daraufhin angezeigten Dialogfeld auf Leere Python-Datei, geben Sie dieser den Namen app.py, und klicken Sie auf Hinzufügen. Die Datei wird in Visual Studio automatisch in einem Editorfenster geöffnet.

  3. Kopieren Sie den folgenden Code, und fügen Sie diesen in app.py ein:

    from flask import Flask
    
    # Create an instance of the Flask class that is the WSGI application.
    # The first argument is the name of the application module or package,
    # typically __name__ when using a single module.
    app = Flask(__name__)
    
    # Flask route decorators map / and /hello to the hello function.
    # To add other resources, create functions that generate the page contents
    # and add decorators to define the appropriate resource locators for them.
    
    @app.route('/')
    @app.route('/hello')
    def hello():
        # Render the page
        return "Hello Python!"
    
    if __name__ == '__main__':
        # Run the app server on localhost:4449
        app.run('localhost', 4449)
    
  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Hinzufügen > Neues Element aus.

  2. Wählen Sie im angezeigten Dialogfeld die Option leer aus. Geben Sie Name die Bezeichnung app.py ein, und wählen Sie dann Hinzufügen aus. Die Datei wird in Visual Studio automatisch in einem Editorfenster geöffnet.

  3. Kopieren Sie den folgenden Code, und fügen Sie diesen in app.py ein:

    from flask import Flask
    
    # Create an instance of the Flask class that is the WSGI application.
    # The first argument is the name of the application module or package,
    # typically __name__ when using a single module.
    app = Flask(__name__)
    
    # Flask route decorators map / and /hello to the hello function.
    # To add other resources, create functions that generate the page contents
    # and add decorators to define the appropriate resource locators for them.
    
    @app.route('/')
    @app.route('/hello')
    def hello():
        # Render the page
        return "Hello Python!"
    
    if __name__ == '__main__':
        # Run the app server on localhost:4449
        app.run('localhost', 4449)
    

Sie haben sicher bemerkt, dass im Dialogfeld Hinzufügen > Neues Element viele weitere Dateitypen angezeigt werden, die Sie zu einem Python-Projekt hinzufügen können. Dazu zählen zu u. a. eine Python-Klasse, ein Python-Paket, ein Python-Komponententest und web.config-Dateien. Im Allgemeinen sind diese Elementvorlagen eine gute Möglichkeit, um mithilfe von nützlichen Codebausteinen schnell Dateien zu erstellen.

Frage: Wo erfahre ich mehr über Flask?

Antwort: Lesen Sie die Flask-Dokumentation. Beginnen Sie dabei mit dem Quickstart (Schnellstart).

Ausführen der Anwendung

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf app.py, und wählen Sie dann im Dropdownmenü Als Startdatei festlegen aus. Dieser Befehl ermittelt die Codedatei, die in Python bei der Ausführung der App startet.

    Festlegen der Startdatei für ein Projekt in Projektmappen-Explorer

    Festlegen der Startdatei für ein Projekt in Projektmappen-Explorer

    Screenshot: Festlegen der Startdatei für ein Projekt im Projektmappen-Explorer.

  2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie Eigenschaften aus. Wählen Sie im Menü Eigenschaften die Registerkarte Debuggen aus, und legen Sie die Eigenschaft Portnummer auf 4449 fest. Dadurch wird sichergestellt, dass Visual Studio entsprechend der app.run-Argumente im Code einen Browser mit localhost:4449 startet.

  3. Wählen Sie Debuggen > Ohne Debuggen starten aus, oder drücken Sie STRG+F5. Dadurch werden Änderungen an Dateien gespeichert, und die App wird ausgeführt.

  4. Ein Befehlsfenster mit der Meldung Wird in https ausgeführt://localhost:4449 wird angezeigt. Ein Browserfenster mit localhost:4449 wird geöffnet und zeigt die Meldung Hello, Python! an. Die GET-Anforderung mit dem Status 200 wird ebenfalls im Befehlsfenster angezeigt.

    Wenn kein Browser automatisch geöffnet wird, starten Sie Ihren bevorzugten Browser, und navigieren Sie zu localhost:4449.

    Wenn nur die interaktive Python-Shell im Befehlsfenster angezeigt wird oder das Fenster nur kurz auf dem Bildschirm aufblinkt, stellen Sie sicher, dass app.py als Startdatei festgelegt ist.

  5. Navigieren Sie zu localhost:4449/hello, um zu testen, dass der Decorator der /hello-Ressource ebenfalls funktioniert. Auch diesmal wird die GET-Anforderung mit dem Status 200 im Befehlsfenster angezeigt. Probieren Sie auch andere URLs aus, um festzustellen, ob diese den Statuscode 404 im Befehlsfenster anzeigen.

  6. Schließen Sie das Befehlsfenster, um die App zu beenden, und schließen Sie dann das Browserfenster.

Frage: Was ist der Unterschied zwischen den Befehlen „Ohne Debuggen starten“ und „Debugging starten“?

Antwort: Sie verwenden Debuggen starten, um die App im Kontext des Visual Studio-Debuggers auszuführen. Mit dem Debugger können Sie Breakpoints setzen, Variablen untersuchen und den Code zeilenweise durchlaufen. Apps werden im Debugger aufgrund der Hooks, die das Debuggen ermöglichen, möglicherweise langsamer ausgeführt.

Ohne Debuggen starten führt die App direkt aus, so als ob Sie sie ohne Debugkontext über die Befehlszeile ausgeführt hätten. Ohne Debuggen starten startet auch automatisch einen Browser und navigiert zu der URL, die auf der Registerkarte Debuggen der Projekteigenschaften angegeben ist.

Nächste Schritte

Herzlichen Glückwunsch! Sie haben Ihre erste Python-App in Visual Studio ausgeführt. Und Sie haben einiges über die Verwendung von Visual Studio als Python-IDE erfahren.

Da die Schritte, die Sie in diesem Schnellstart befolgt haben, relativ allgemein sind, können und sollten diese automatisiert werden. Visual Studio-Projektvorlagen sind für diese Automatisierungen zuständig. Lesen Sie Schnellstart: Erstellen eines Python-Projekts mithilfe einer Vorlage, um eine Web-App ähnlicher der im vorliegenden Artikel zu erstellen, aber mit weniger Schritten.

Ein umfangreicheres Tutorial zu Python in Visual Studio, in dem auch die Verwendung des interaktiven Fensters, das Debuggen, die Datenvisualisierung und das Arbeiten mit Git behandelt wird, finden Sie unter Tutorial: Erste Schritte mit Python in Visual Studio.

Klicken Sie für weitere Informationen zu den Features von Visual Studio auf folgende Links.