Top 13 Python Web Frameworks to Learn in 2020

Frameworks machen Entwicklern das Leben leichter, indem sie ihnen eine Struktur für die Anwendungsentwicklung bieten. Sie automatisieren die Implementierung gängiger Lösungen, verkürzen die Entwicklungszeit und ermöglichen es den Entwicklern, sich auf die Anwendungslogik statt auf Routineelemente zu konzentrieren.

In diesem Artikel stellen wir Ihnen eine Liste der zwölf besten Python-Web-Frameworks vor, die Ihnen auf dem Weg zum professionellen Backend-Entwickler und zur Verbesserung Ihrer bestehenden Fähigkeiten nützlich sein werden.

Warum Python-Frameworks? Stack Overflow hat kürzlich die Ergebnisse ihrer jährlichen Entwicklerumfrage für 2019 veröffentlicht, in der Python zur am schnellsten wachsenden großen Programmiersprache erklärt wurde.

Quelle: stackoverflow.blog

Die mit Abstand beliebtesten Python-Frameworks sind Django und Flask. Das bedeutet aber nicht, dass man das Potenzial anderer Frameworks außer Acht lassen sollte. Jedes von ihnen verfügt über Funktionen, die perfekt für Ihr Webprojekt geeignet sein könnten.

Quelle: jetbrains.com

Denken Sie daran, dass die Python-Frameworks, über die wir hier sprechen, nicht in einer bestimmten Reihenfolge aufgelistet sind: Wir haben uns darauf konzentriert, Ihnen zu zeigen, was Sie tun können, anstatt Ihnen vorzuschreiben, was Sie tun sollten.

Einige Dinge, die Sie beachten sollten

Wenn Sie sich für ein Framework entscheiden, sollten Sie die Größe und Komplexität Ihres Projekts berücksichtigen. Wenn Sie ein großes System mit vielen Funktionen und Anforderungen entwickeln wollen, ist ein Full-Stack-Framework vielleicht die richtige Wahl. Wenn Ihre Anwendung kleiner und einfacher ist, sollten Sie wahrscheinlich ein Microframework in Betracht ziehen.

Zweitens müssen Sie prüfen, ob das von Ihnen in Betracht gezogene Framework vertikal und horizontal skaliert werden kann. Dies ist ein Muss für Projekte, die auf mehreren Servern laufen, große Mengen an Datenverkehr bewältigen und das Hinzufügen neuer Funktionen zur Verbesserung der Funktionalität unterstützen sollen.

Wenn Sie sich für ein Framework entschieden haben, wenden Sie sich an ein Entwicklerteam und fragen Sie nach den geschätzten Kosten für die Entwicklung Ihrer Anwendung.

Informationen über Art und Schwerpunkt einiger Frameworks finden Sie hier. Eine endgültige Entscheidung sollte jedoch aus Ihrem eigenen Verständnis Ihres Projekts und der Aufgaben, die Sie vereinfachen möchten, resultieren.

Frameworks können der Entwicklung jedoch auch im Weg stehen. Wenn Sie sich für ein Full-Stack-Framework entscheiden, gehen Sie oft eine Reihe von Einschränkungen ein. Natürlich kann man Wege finden, diese zu umgehen, aber man sollte aufpassen, dass man nicht mehr Zeit damit verbringt, für seine eigene Freiheit zu kämpfen, als wenn man eine Anwendung in reinem Python schreiben würde.

Full-Stack-Frameworks

Ein Full-Stack-Framework oder ein Enterprise-Framework ist eine Komplettlösung mit Bibliotheken, die so konfiguriert sind, dass sie nahtlos zusammenarbeiten. Es unterstützt die Entwicklung von Backend-Diensten, Frontend-Schnittstellen und Datenbanken. Ein Full-Stack-Framework bietet alles, was ein Entwickler für die Erstellung einer Anwendung benötigt. Python bietet mehr als ein Full-Stack-Framework.

Django

Official Website | GitHub | PyPI | Awesome

GitHub Stars: 44,077 | GitHub Forks: 18,949

Django ist ein freies quelloffenes Full-Stack Python Framework. Es versucht, alle notwendigen Funktionen standardmäßig einzubinden, anstatt sie als separate Bibliotheken anzubieten.

Zu den beispielhaften Funktionen von Django gehören die Authentifizierung, das URL-Routing, die Template-Engine, der objektrelationale Mapper (ORM) und die Migration von Datenbankschemata (Django v.1.7+).

Durch diese Funktionen ist Django hoch skalierbar, unglaublich schnell und extrem vielseitig.

Django verwendet seinen ORM, um Objekte auf Datenbanktabellen abzubilden. Derselbe Code funktioniert mit verschiedenen Datenbanken und lässt sich problemlos von einer Datenbank auf eine andere übertragen. Die wichtigsten Datenbanken, mit denen Django zusammenarbeitet, sind PostgreSQL, MySQL, SQLite und Oracle, aber mit Treibern von Drittanbietern können Sie auch andere verwenden.

Mit Django können Sie jede Webanwendung erstellen, von kleinen Projekten bis hin zu komplexen Websites. Dank seiner Flexibilität wird Django auch für die Erstellung von MVPs verwendet, wodurch Startups ihre Zeit und ihr Budget optimieren können.

Djangos Nutzerbasis wird voraussichtlich wachsen, da viele Entwickler dieses Framework als beste Wahl für neue Technologien wie maschinelles Lernen ansehen. Außerdem plant die Django-Community für 2020 die Veröffentlichung weiterer Bibliotheken, um die wachsende Nachfrage zu befriedigen.

Wir bei SteelKiwi verwenden Django als unser primäres Framework für die Backend-Entwicklung. Wenn Sie die erstaunlichen Anwendungen sehen möchten, die wir bereits mit Django entwickelt haben, besuchen Sie unsere Projektseite.

Pyramid

Official Website | GitHub | PyPI | Awesome

GitHub Stars: 3,215 | GitHub Forks: 866

Pyramid ist ein quelloffenes – und das zweite nennenswerte – Python-basierte Webanwendungs-Framework. Sein Ziel ist es, mit minimaler Komplexität so viel wie möglich zu erreichen. Pyramid läuft auf Python 3 und hält mit den technologischen Verbesserungen Schritt. Pyramid 1.10 ist die aktuelle Version des Frameworks und das zehnte Update seit 2010.

Das auffälligste Merkmal von Pyramid ist seine Fähigkeit, sowohl mit kleinen als auch mit großen Anwendungen gut zu funktionieren. Einige der großartigen Funktionen von Pyramid sind:

  • Einzeldatei-Anwendungen
  • URL-Generierung
  • Erweiterbare Konfiguration
  • Allumfassende Templating- und Asset-Spezifikationen
  • Flexible Authentifizierung und Autorisierung
  • Tests, Support, und umfassende Datendokumentation
  • Ansichtsprädikate und viele Ansichten pro Route
  • Funktionsdekoratoren
  • Prädikate
  • Renderer

Mit Pyramid kann ein Entwickler über die Templating-Sprache, die Generierungsbibliotheken und die Datenbankschicht entscheiden.

Die Pyramid-Gemeinschaft ist aktiv und kann auf viele Veröffentlichungen verweisen. Entwickler können den Fortschritt des Frameworks verfolgen, indem sie dem offiziellen IRC-Kanal beitreten oder Google- und Twitter-Gruppen beitreten.

TurboGears

Official Website | GitHub | PyPI

GitHub Stars: 654 | GitHub Forks: 65

TurboGears ist ein quelloffenes, datengesteuertes Full-Stack-Webanwendungs-Framework. Es basiert auf einer Vielzahl von Middleware und Bibliotheken und wurde ursprünglich entwickelt, um die besten Komponenten anderer Python-Frameworks zu kombinieren.

TurboGears ermöglicht es Ihnen, schnell erweiterbare datengesteuerte Webanwendungen zu entwickeln. Es verfügt über eine benutzerfreundliche Template-Engine und ein leistungsstarkes und flexibles ORM. Zusätzlich zu den großartigen Template-Systemen, die das Leben der Designer erleichtern, bietet TurboGears viel Flexibilität, eine starke Unterstützung von Aggregaten, ein leistungsstarkes ORM und wiederverwendbare Snippets.

Einige der charakteristischen Eigenschaften von TurboGears sind:

  • Multi-Datenbank-Unterstützung
  • MVC-ähnliche Architektur
  • Unterstützung für SQLObject und SQLAlchemy
  • Kid und Genshi in den bevorzugten Templating-Sprachen enthalten
  • Validierung mit FormEncode
  • Pylons als Webserver
  • ToscaWidgets, eine Anwendungsbibliothek, die die Koordination von Frontend-Design und Server-Entwicklung vereinfacht
  • PasteScript-Vorlagen
  • WSGI-basierte Frontserver (Paste HTTP-Server, CherryPy WSGI/HTTP-Server, etc.)
  • Befehlszeilentools
  • MochiKit JavaScript Bibliotheksintegration
  • Alle Features als Funktionsdekoratoren implementiert

Was die Zukunft von TurboGears angeht, so arbeitet die Community derzeit an der Verbesserung der Fähigkeiten und der allgemeinen Stabilität des Frameworks und ist dabei, den „Minimalcode“ zu veröffentlichen. Dieser Code wird auch als „Microframework“ bezeichnet, also als eine abgespeckte Version von TurboGears. Der minimale Code wird Entwicklern dabei helfen, Anwendungen schneller zu erstellen und damit Geld und Zeit zu sparen.

Web2py

Offizielle Website | GitHub | PyPI

GitHub Stars: 1,794 | GitHub Forks: 818

Web2py ist ein skalierbares Open-Source-Full-Stack-Python-Framework. Es ist sehr leistungsfähig, wenn es um die Verarbeitung von Daten geht. Web2py wurde ursprünglich als Lehrmittel angeboten, wobei der Schwerpunkt auf der Benutzerfreundlichkeit lag. Das erklärt, warum es keine Konfigurationsdateien auf Projektebene gibt.

Das Tolle an Web2py ist jedoch, dass es mit einer eigenen webbasierten IDE ausgeliefert wird, die unter anderem einen Code-Editor, einen Debugger und eine Ein-Klick-Bereitstellung beinhaltet.

Weitere wertvolle Eigenschaften von Web2py sind:

  • Keine Anforderungen für Installation und Konfiguration
  • Lauffähig auf Windows, Mac, Linux/Unix, Google App Engine, Amazon EC2 und jedem Webhosting, das entweder Python 2.5-2.7 oder Java+Python unterstützt
  • Lesbarkeit mehrerer Protokolle
  • Datensicherheit, die Schwachstellen wie Cross-Site-Scripting, Injektionsfehler und böswillige Dateiausführung verhindert
  • Erfolgreiche Anwendung von Software-Engineering-Praktiken, die den Code leicht lesbar und wartbar machen
  • Fehlerverfolgung, gründliche Fehlerprotokollierung und Ticketing
  • Rollenbasierte Zugriffskontrolle
  • Unterstützung für Internationalisierung
  • Abwärtskompatibilität, die eine benutzerorientierte Weiterentwicklung gewährleistet, ohne die Verbindung zu früheren Versionen zu verlieren

Ein Ticketing-System ist das Hauptmerkmal von Web2py; Es stellt Tickets aus, wenn Fehler auftreten. Auf diese Weise können die Benutzer Fehler und deren Status verfolgen.

Trotz all dieser Vorteile ist die Web2py-Community kleiner als die von Pyramid oder Django. Nicht viele Entwickler nutzen es. Das bedeutet, dass die Chancen, Unterstützung zu erhalten, geringer sind. Außerdem ist die offizielle Mailingliste nicht sehr aktiv.

Microframeworks

Ein Microframework, oder ein minimalistisches Webanwendungsframework, verfügt nicht über die meisten Funktionen eines vollwertigen Frameworks, wie z.B. eine Web-Template-Engine, Authentifizierungsfunktionen, Konten, Autorisierung, Eingabevalidierung und Eingabesanierung. Ein Mikroframework versucht, nur die für die Erstellung einer Anwendung erforderlichen Komponenten bereitzustellen. Es kann sich auch auf die Bereitstellung der notwendigen Funktionalität für einen bestimmten Bereich konzentrieren.

Flask

Official Website | GitHub | PyPI | Awesome

Github Stars: 46,475 | GitHub Forks: 12,921

Flask ist ein Python-Framework, das unter der BSD-Lizenz verfügbar ist. Es wurde durch das Ruby-Framework Sinatra inspiriert. Flask basiert auf dem Werkzeug WSGI-Toolkit und dem Jinja2-Template.

Die Hauptidee hinter Flask ist es, eine solide Grundlage für Webanwendungen zu schaffen. Von dort aus können Sie alle Erweiterungen verwenden, die Sie benötigen. Flask wird für alle Projekte eingesetzt. Tatsächlich ist es die Standardwahl für jedes Webprojekt, das nicht für Django geeignet ist.

Das leichte und modulare Design von Flask macht es leicht an die Bedürfnisse der Entwickler anpassbar. Es enthält eine Reihe von nützlichen Out-of-the-Box-Funktionen:

  • Eingebauter Entwicklungsserver und ein schneller Debugger
  • Integrierte Unterstützung für Unit-Tests
  • RESTful Request Dispatching
  • Jinja2-Templating
  • Sicherheits-Cookies-Unterstützung (Client-seitige Sitzungen)
  • WSGI 1.0-Konformität
  • Unicode-basiert
  • Fähigkeit, jedes ORM einzubinden
  • HTTP-Request-Handling

Seit seiner Einführung im Jahr 2010 wurde Flask 27 Mal aktualisiert. Bis heute bleibt es das am stärksten wachsende Python-Framework. Allerdings werden viele Flask-Erweiterungen nicht mehr unterstützt: die Dokumentation ist veraltet und sie werden nicht mehr weiterentwickelt. Wenn Sie darauf stoßen, müssen Sie googeln, um ein aktiv unterstütztes Plug-in mit ähnlicher Funktionalität zu finden.

Bottle

Offizielle Website | GitHub | PyPI

GitHub Stars: 6,348 | GitHub Forks: 1,245

Bottle ist ein Microframework. Ursprünglich für die Erstellung von APIs gedacht, implementiert Bottle alles in einer einzigen Quelldatei. Es hat keine Abhängigkeiten, außer der Python Standard Library. Wenn man mit Bottle programmiert, ist man näher an der Sache dran als mit einem Full-Stack-Framework. Bottle ist jedoch nur dann geeignet, wenn Sie eine sehr kleine Anwendung mit höchstens 500 Zeilen Code und keinen besonderen Anforderungen entwickeln.

Zu den Standardfunktionen gehören Routing, Templating, Dienstprogramme und eine grundlegende Abstraktion über den WSGI-Standard.

  • Routing – unterstützt das Mapping von Anfragen auf Funktionsaufrufe, wodurch saubere und dynamische URLs erreicht werden können
  • Templates – eine schnelle und Pythonic Template-Engine, zusammen mit voller Unterstützung für Mako, Jinja2 und Cheetah
  • Utilities – komfortabler Zugriff auf Formulardaten, Dateiuploads, Cookies, Header, und andere HTTP-bezogene Metadaten
  • Server – ein eingebauter HTTP-Entwicklungsserver, der fapws3, bjoern, GAE, СherryPy und jeden anderen WSGI-fähigen HTTP-Server unterstützt

Seit 2009 wurde Bottle 73 Mal aktualisiert und ist nun eine perfekte Lösung für das Prototyping, das Erlernen der Organisation von Web-Frameworks und das Erstellen einfacher persönlicher Anwendungen.

Beiträge zur Bottle-Community werden über GitHub angenommen. Benutzer können auch der Bottle-Mailingliste und dem Blog beitreten und die neuesten Änderungen auf Twitter verfolgen. Wer ein zusätzliches Forum für Diskussionen sucht, kann einem Freenode-Chat beitreten.

CherryPy

Offizielle Website | GitHub | PyPI

GitHub Stars: 1.057 | GitHub Forks: 259

CherryPy ist ein quelloffenes, minimalistisches Web-Framework. Es macht das Erstellen von Python-Webanwendungen nicht anders als das Erstellen jedes anderen objektorientierten Programms.

CherryPy ist so konzipiert, dass es erweiterbar ist. Das Framework bietet sogar Mechanismen für Hookpoints und Erweiterungen.

Zum Beispiel ist eine CherryPy-basierte Webanwendung eine eigenständige Python-Anwendung, die ihren eigenen Multi-Thread-Webserver einbettet. Mit einem eigenen Webserver umfassen die Erweiterungspunkte Funktionen außerhalb des Anfrage-Antwort-Zyklus und erhöhen so die Erweiterbarkeit von CherryPy.

Eine CherryPy-basierte Webanwendung ist eine eigenständige Python-Anwendung, die ihren eigenen Multi-Thread-Webserver einbettet. CherryPy-Apps laufen auf jedem Betriebssystem, das Python unterstützt (Windows, macOS, Linux, etc.). Sie können überall dort eingesetzt werden, wo Sie eine gewöhnliche Python-Anwendung ausführen können. Sie brauchen keinen Apache für CherryPy-Anwendungen, aber Sie können eine CherryPy-Anwendung genauso gut hinter Apache laufen lassen wie hinter Lighttpd oder IIS.

CherryPy ist kein sehr einschränkendes Framework, da es Ihnen erlaubt, jede Art von Technologie für Templating, Datenzugriff und so weiter zu verwenden. Dennoch ist es in der Lage, Sessions, Statics, Cookies, Dateiuploads und alles andere, was ein Web-Framework typischerweise kann, zu handhaben.

Einige der Standardfunktionen von CherryPy umfassen:

  • Ein HTTP/1.1-kompatibler WSGI-Thread-gepoolter Webserver
  • Einfacher Betrieb mehrerer HTTP-Server gleichzeitig
  • Ein leistungsfähiges Konfigurationssystem
  • Ein flexibles Plugin-System
  • Out-of-the-box-Tools für Caching, Kodierung, Sessions, Authentifizierung, statische Inhalte usw.
  • Eingebaute Unterstützung für Profiling, Coverage und Testing
  • Lauffähigkeit auf Python 2.7+, Python 3.1+, PyPy, Jython und Android

Trotz all seiner Funktionen und Vorteile sind viele Entwickler der Meinung, dass die Dokumentation von CherryPy verbessert werden könnte. Außerdem könnte CherryPy zumindest etwas einfacher zu bedienen sein.

Wie die meisten anderen Frameworks hat auch CherryPy eine Community, die Anfängern und fortgeschrittenen Entwicklern zur Seite steht. CherryPy hat eine Mailingliste und schlägt Entwicklern vor, dem IRC-Kanal des Frameworks oder Gitter und Google-Gruppen beizutreten.

Falcon

Offizielle Website | GitHub | PyPI

GitHub Stars: 1.057 | GitHub Forks: 259

Falcon ist ein Bare-Metal-Python-Web-API-Framework zum Aufbau sehr schneller App-Backends. Das Logo des Frameworks ist ein Falke, der symbolisiert, wie schnell Falcon arbeitet.

Dieses Framework ermöglicht es Entwicklern, sauberere Designs zu erstellen und die meisten Anfragen zu bearbeiten. Falcon schränkt Entwickler bei der Auswahl von Bibliotheken für Datenbanken und Autorisierung nicht ein.

Weitere wertvolle Falcon-Funktionen:

  • 100% Codeabdeckung mit einer umfassenden Testsuite
  • Eine hochoptimierte Codebasis
  • Upfront-Ausnahmebehandlung
  • REST-inspirierte Ressourcenklassen
  • URI-Vorlagen für intuitive Routinen
  • Einfacher Zugriff über Request- und Response-Klassen
  • DRY-Anfrageverarbeitung über Middleware Komponenten
  • Diomatische HTTP-Fehlerantworten
  • Unit-Testing über WSGI-Helfer

Falcon verzichtet bei der Entwicklung eines Web-Frameworks auf unnötige Operationen. Außerdem bietet es Wahlfreiheit: Entwickler können Entscheidungen treffen, die ihnen helfen, Implementierungen frei abzustimmen und anzupassen.

Zwei weitere erwähnenswerte Vorteile sind die Verfügbarkeit einer umfangreichen Dokumentation und eine aktive Community.

Hug

Offizielle Website | GitHub | PyPI

GitHub Stars: 5,905 | GitHub Forks: 347

Hug ist ein Python 3 API Entwicklungsframework. Es wurde entwickelt, um Software-Ingenieuren die Möglichkeit zu geben, eine API einmal zu entwickeln und sie dann bei Bedarf wiederzuverwenden. Das Hug-Framework vereinfacht die API-Entwicklung, indem es verschiedene Schnittstellen bietet. Das ist der Hauptgrund, warum dieses Framework als eines der schnellsten in Python 3 bezeichnet wird.

Hauptmerkmale von Hug:

  • Unterstützung für automatische Dokumentation
  • Validierung mit Hilfe von Anmerkungen
  • Eingebautes Versionsmanagement
  • Kompatibilität mit Cython
  • Kann als Python-Bibliothek verwendet werden

Das Hug-Framework enthält so wenige Integrationen und so wenig Code wie möglich, Dabei bleibt es funktional und bietet eine hervorragende Leistung. Außerdem wächst die Hug-Community derzeit. Das ist ein Zeichen für die Nachfrage nach dem Framework und ein Beweis dafür, dass ein Entwickler bei jedem Problem Hilfe finden kann.

FastAPI

Offizielle Website |GitHub |PyPI

GitHub Sterne: 4.835| GitHub Forks: 256

FastAPI ist ein modernes Python-basiertes Framework. Es wurde ursprünglich so konzipiert, dass es einfach zu benutzen ist, um die beste Entwicklungserfahrung zu gewährleisten. Bis heute ist FastAPI eines der schnellsten Frameworks für die Erstellung von APIs mit Python 3.6+.

Das Framework hat mehrere Eigenschaften von Flask übernommen, darunter seine Einfachheit. Das gesamte Framework baut auf Starlette auf und enthält die meisten seiner Funktionen (Templates, WebSockets und GraphQL-Unterstützung).

Das FastAPI-Framework bietet:

  • Steigerung der Entwicklungsgeschwindigkeit um 200% bis 300%
  • Reduzierung von Fehlern um 40%
  • Verringerung des Zeitaufwands für das Debugging
  • Minimierung der Code-Duplizierung
  • Automatische interaktive Dokumentation

FastAPI ist nicht eng an eine Datenbank gekoppelt. Sie unterstützt jedoch die Datenbanken, die Sie benötigen. Mit FastAPI können Sie Ihr Projekt so strukturieren, wie Sie es brauchen, und sogar die meisten der gleichen Dateien aus einem Ihrer Flask-Projekte verwenden.

Der einzige Nachteil ist die kleine Community. Aber das liegt daran, dass FastAPI ein relativ neues Framework ist.

Asynchrone Frameworks

Ein asynchrones Framework ist eine relativ neue Art von Python-Framework. Es ist ein Mikroframework, das es Entwicklern ermöglicht, eine große Anzahl von gleichzeitigen Verbindungen zu handhaben. Asynchrone Frameworks verwenden nicht-blockierende Sockets und basieren auf der asyncio-Bibliothek von Python.

Sanic

Offizielle Website | GitHub | PyPI

GitHub Stars: 12,780 | GitHub Forks: 1,203

Sanic ist ein Python-Web-Framework, das auf uvloop aufbaut und speziell für schnelle HTTP-Antworten durch asynchrone Anfrageverarbeitung entwickelt wurde.

Es läuft auf Python 3.5+. Sanic unterstützt asynchrone Request-Handler, was es mit den async/await-Funktionen von Python 3.5 kompatibel macht. Dies erhöht die Geschwindigkeit und bietet nicht-blockierende Fähigkeiten.

Sonic gilt als das bevorzugte asynchrone Framework in der Python-Welt aufgrund von Routing, Middleware, Cookies, Versionierung, statischen Dateien, Blueprints, klassenbasierten Ansichten und Sockets. Allerdings bietet es keine Datenbankunterstützung und kein Templating.

In einem Benchmark-Test mit einem Prozess und 100 Verbindungen konnte Sanic 33.342 Anfragen pro Sekunde verarbeiten, bei einer durchschnittlichen Latenz von 2,96 ms.

Tornado

Official Website | GitHub | PyPI

GitHub Stars: 18.292 | GitHub Forks: 5,040

Tornado ist ein Python-Web-Framework und eine asynchrone Netzwerkbibliothek, die sich auf Geschwindigkeit und die Fähigkeit konzentriert, große Datenmengen zu verarbeiten. Es verwendet eine nicht-blockierende Netzwerk-E/A und löst das C10k-Problem (was bedeutet, dass es, wenn es richtig konfiguriert ist, 10.000+ gleichzeitige Verbindungen verarbeiten kann).

Das macht es zu einem großartigen Werkzeug für die Entwicklung von Anwendungen, die hohe Leistung und Zehntausende von gleichzeitigen Benutzern erfordern.

Die wichtigsten Funktionen von Tornado sind:

  • Eingebaute Unterstützung für Benutzerauthentifizierung
  • Echtzeitdienste
  • Hochwertige Performance
  • Python-basierte Web-Templating-Sprache
  • Nicht blockierender HTTP-Client
  • Implementierung von Authentifizierungs- und Autorisierungsschemata Dritter (Google OpenID/OAuth, Facebook Login, Yahoo BBAuth, FriendFeed OpenID/OAuth, Twitter OAuth)
  • Unterstützung für Übersetzung und Lokalisierung

In Bezug auf die Popularität steht Tornado irgendwo zwischen Django und Flask. Nehmen wir an, Sie möchten etwas in Flask oder Django schreiben, weil Sie deren Funktionen und Werkzeuge mögen, aber Sie brauchen auch eine viel bessere Leistung. In diesem Fall sollten Sie sich für Tornado entscheiden.

Andere

Dash

Offizielle Website | GitHub | PyPI | Awesome

GitHub Stars: 9,856 | GitHub Forks: 1.011

Dash ist ein quelloffenes Python-Framework, das für die Erstellung analytischer Webanwendungen verwendet wird. Es eignet sich besonders für Python-Datenwissenschaftler, die mit der Webentwicklung nicht sehr vertraut sind.

Es gibt zwei grundlegende Vorteile von Dash:

  • Es ermöglicht die Erstellung hochgradig interaktiver Anwendungen nur mit Python-Code.
  • Es macht es einfach, die Leistungsfähigkeit von Python-Tools für die Datenmanipulation zu nutzen.

Dash-Anwendungen sind Webserver, auf denen Flask läuft und die mit JSON-Paketen über HTTP-Anfragen kommunizieren. Ihr Frontend rendert Komponenten mit React.js.

Mit Dash entwickelte Anwendungen werden im Webbrowser gerendert und können auf Servern deployed werden. Das bedeutet auch, dass Dash-Anwendungen von Haus aus plattformübergreifend und mobilfähig sind.

Dash-Entwickler haben Zugriff auf die zugrunde liegende Flask-Instanz und alle ihre konfigurierbaren Eigenschaften. Um die Möglichkeiten von Dash-Anwendungen zu erweitern, können Entwickler auch die zahlreichen Flask-Plugins nutzen.

Auswahl eines Python-Web-Frameworks

Das richtige Framework kann alles sein, was Sie brauchen, um ein erfolgreiches Projekt zu entwickeln. Wir hoffen sehr, dass Sie in diesem Artikel ein interessantes Framework gefunden haben. Wir haben auch einen anderen, die 17 besten Python-Web-Frameworks von 2017, wenn Sie daran interessiert sind, weitere Optionen zu erkunden.

Wir würden uns freuen, wenn Sie unsere GitHub-Seite besuchen. Unsere SteelKiwi-Entwickler bemühen sich sehr um Innovationen in der Welt der Technik, und je mehr Menschen sich daran beteiligen, desto besser.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.