" Django ist ein Python-Webframework auf hoher Ebene, das eine schnelle Entwicklung und ein sauberes, pragmatisches Design fördert . " Wenn Sie etwas erstellen, das einer E-Commerce-Website ähnelt, sollten Sie sich wahrscheinlich für Django entscheiden. Es wird Ihre Arbeit schnell erledigen. Sie müssen sich nicht um zu viele Technologieoptionen kümmern. Es bietet alles, was Sie von der Template Engine bis zum ORM benötigen. Es wird eine leichte Meinung darüber sein, wie Sie Ihre App strukturieren, was gut ist, wenn Sie mich fragen. Und es hat die stärkste Community aller anderen Bibliotheken, was bedeutet, dass einfache Hilfe verfügbar ist.
" Flask ist ein Mikroframework für Python, das auf Werkzeug, Jinja 2 und guten Absichten basiert." .Achtung - "Mikroframework" kann irreführend sein. Dies bedeutet nicht, dass Flask eine halbgebackene Bibliothek ist. Dies bedeutet, dass der Kern des Kolbens sehr, sehr einfach ist. Im Gegensatz zu Django werden keine Technologieentscheidungen für Sie getroffen. Sie können jede Template-Engine oder ORM auswählen, die Ihnen gefällt. Obwohl es standardmäßig mit der Jinja Template Engine geliefert wird, können Sie jederzeit unsere eigene auswählen. Soweit ich weiß, ist Flask nützlich, um API-Endpunkte (RESTful-Services) zu schreiben.
" Twisted ist eine ereignisgesteuerte Netzwerk-Engine, die in Python geschrieben wurde" . Dies ist ein Hochleistungsmotor. Der Hauptgrund für seine Geschwindigkeit ist etwas, das als verzögert bezeichnet wird. Twisted baut auf aufgeschobenen Daten auf. Für diejenigen unter Ihnen, die nichts über Verzögerungen wissen, ist es der Mechanismus, der durch asynchrone Architektur erreicht wird. Verdreht ist sehr schnell. Ist aber nicht zum Schreiben herkömmlicher Webapps geeignet. Wenn Sie etwas auf niedriger Ebene vernetzen möchten, ist Twisted Ihr Freund.
" Tornado ist ein Python-Webframework und eine asynchrone Netzwerkbibliothek, die ursprünglich bei FriendFeed entwickelt wurden. Durch die Verwendung nicht blockierender Netzwerk-E / A kann Tornado auf Zehntausende offener Verbindungen skaliert werden, was es ideal für lange Abfragen, WebSockets und andere Anwendungen macht das erfordert eine langlebige Verbindung zu jedem Benutzer " . Tornado steht irgendwo zwischen Django und Flask. Wenn Sie etwas mit Django oder Flask schreiben möchten, aber eine bessere Leistung benötigen, können Sie sich für Tornado entscheiden. Es kann C10k-Probleme sehr gut behandeln, wenn es richtig aufgebaut ist.
" Cyclone ist ein Webserver-Framework für Python, das die Tornado-API als Twisted-Protokoll implementiert . " Was ist, wenn Sie etwas wollen, das fast so performant ist wie Twisted, aber einfach zu schreibende herkömmliche Webapps? Begrüßen Sie den Zyklon. Ich würde Cyclone Tornado vorziehen. Es hat eine API, die Tornado sehr ähnlich ist. In der Tat ist dies eine Gabelung des Tornados. Das Problem ist jedoch, dass es eine relativ kleine Gemeinschaft gibt. Alexandre Fiori ist der einzige Hauptverantwortliche für das Repo.
" Pyramid ist ein allgemeines Open-Source-Framework für die Entwicklung von Python-Webanwendungen. Sein Hauptziel ist es, einem Python-Entwickler das Erstellen von Webanwendungen zu erleichtern." Ich habe Pyramid nicht wirklich benutzt, aber ich habe die Dokumentation durchgesehen. Soweit ich weiß, ist Pyramid Flask sehr ähnlich, und ich denke, Sie können Pyramid überall dort verwenden, wo Flask angemessen erscheint, und umgekehrt.
EDIT : Bitte um Überprüfung anderer Frameworks ist willkommen!
Quelle: http://dhilipsiva.com/2013/05/19/python-libraries-django-twisted-tornado-flask-cyclone-and-pyramid.html