Warum Python so beliebt ist

Mo, 1. Februar 2021, Ralf Hersel

Programmiersprachen kommen und gehen. Einige wenige, wie C, C++, C# und Java, überdauern die Zeiten. Eine Sprache, die in den späten 1980er/Anfang der 1990er Jahre aufkam, steht in den Charts der verwendeten Programmiersprachen ganz oben. Tatsächlich landete Python im November 2020 auf Platz 2 des Tiobe-Index für Programmiersprachen, noch vor Sprachen wie Java, C#, C++ und Visual Basic. Fairerweise muss man sagen, dass Python im Dezember wieder auf den dritten Platz zurückgefallen ist, da Java wieder knapp vor Python lag.

Warum also Python?

Es gibt viele Gründe für die Beliebtheit von Python. Dazu gehört die Möglichkeit, mehrere Programmierparadigmen zu verwenden. Es kann sowohl in objektorientierten als auch in strukturierten Programmierungsmodellen verwendet werden. Es hat auch die Fähigkeit, funktionale, aspektorientierte, logische und andere Programmiermodelle zu unterstützen. Ein Grund für diese Unterstützung einer grossen Bandbreite von Ansätzen ist, dass Python so entwickelt wurde, dass es in hohem Masse erweiterbar ist und gleichzeitig kompakt sein soll.


Python wurde auch geschaffen, um schnell zu sein. Dazu gehört auch, dass Elemente entfernt werden können, wenn sie nicht benötigt werden, um das endgültige Programmierergebnis zu beschleunigen.

Python funktioniert auf mehreren Plattformen, darunter Mac OS X, Windows, GNU/Linux und Unix. Es wurden auch Builds für mobile Plattformen erstellt, einschliesslich Android und iOS. Die Verwendung ist kostenlos und kann unter Open-Source-Lizenzierung erweitert werden.

Als Programmiersprache unterstützt Python eine Vielzahl von Kernfunktionen. Die Sprache umfasst die Standard-Grunddatentypen, die von Zahlen bis zu Strings reichen, aber auch Elemente wie Listen und Dictionaries. Datentypen können stark und dynamisch typisiert werden, ausserdem meldet die Sprache eine Ausnahme, wenn man versucht, Typen zu mischen. Als objektorientierte Sprache unterstützt sie Klassen, Mehrfachvererbung und mehr. Die Sprache enthält eine Ausnahmebehandlung und unterstützt eine automatische Speicherverwaltung.

Python verwenden

Wie man sich denken kann, muss Python auf dem System installiert sein, bevor man es verwenden kann. Bei fast allen GNU/Linux-Distributionen ist dies der Fall. Um zu überprüfen, ob Sie einen Python-Interpreter auf dem System vorhanden ist, gibt man einfach 'python' oder 'python3' in ein Befehlsfenster ein und schaut sich die Ausgabe an. Falls Python bereits installiert ist, erhält man eine Ausgabe mit der Versionsnummer:

Python interpretativ verwenden

Sobald klar ist, dass Python auf deinem System läuft, kann man einfache Befehle im Interpreter eingeben und ausführen. Python ist eine interpretierende Sprache im Gegensatz zu reinen kompilierenden Sprachen wie z.B. C. Das bedeutet, dass man Befehle und ganze Programme sofort ausführen kann, ohne diese vorher kompilieren zu müssen. Hinter der Eingabeaufforderung (>>>) können Python-Befehle eingeben werden, wie z.B. das klassische 'Hello World':

Aber auch sinnvollere Befehle sind auf der Kommandozeile möglich. Hier sind einige Beispiele:

  • Berechnung
  • Ein Text-String
  • String in eine Liste umwandeln
  • Den Text umkehren

Die Verwendung des Interpreters auf der Kommandozeile taugt nur für einfache Befehle, ist aber sehr nützlich um bestimmte Befehle aus einem grösseren Programm schnell auszuprobieren. Wer richtige Anwendungen schreiben möchte, wird den Python-Code in einem Text-Editor oder einer Entwicklungsumgebung schreiben möchten. Hierbei wachsen die Ansprüche mit den Aufgaben. Man kann mit einem einfachen Text-Editor beginnen, sich zu einer kleinen IDE (Integrated Development Environment), wie z.B. Geany, steigern, um zum Schluss bei einer grossen IDE, wie VS Codium, zu landen.

Aber warum ist Python so beliebt?

Einige Antworten zu dieser Frage habe ich bereits im ersten Kapitel beantwortet. Es gibt aber noch mehr Gründe, warum sich Python zur Wald-und-Wiesen-Programmiersprache entwickelt hat:

  1. Python ist für fast jede erdenkliche Programmieraufgabe geeignet
  2. Python ist sehr gut dokumentiert; zu fast jeder Fragestellung gibt es eine Antwort
  3. Die Sprache eignet sich sowohl für Anfängerinnen als auch für Profis
  4. Für Python gibt es hunderte Bibliotheken für jeden Zweck
  5. Der Programmcode ist für Menschen gut lesbar
  6. Python kümmert sich im Hintergrund um Garbage Collection, Typisierung und Speicherverwaltung

Wer sich für Programmierung interessiert, sich bisher aber noch nicht getraut hat, oder unsicher war, wie man beginnen soll, ist bei Python bestens aufgehoben. Ein guter Einstiegspunkt ist diese Anleitung.

Quelle: https://www.python.org/

nipos
Geschrieben von nipos am 2. Februar 2021

Ich kann die Beliebtheit von Python gut verstehen: Besonders schwierig ist es wirklich nicht.Und meine groesste Huerde war immer der Compiler,der faellt hier weg.Dadurch kann man auch viel schneller testen,ob Aenderungen am Code funktionieren.Die Einrueckungspflicht ist halt grausam,aber dafuer gibts zum Glueck Bython: https://github.com/mathialo/bython

ber
Geschrieben von ber am 2. Februar 2021

Ein weiterer Grund für Pythons Beliebtheit: Das Freie Software-Produkt hat eine gute Gemeinschaft, die jedes Mal versucht, eine gemeinsame Lösung zu finden. Durch diesen Prozess wird viel Weisheit zusammengefasst und die entsprechenden Python Erweiterungs Vorschläge sind gut lesbar. Eine Python-Versionsnummer bezieht sich deshalb auch auf die Standard-Bibliothek und garantiert ein konsistentes Verhalten.

kragil
Geschrieben von kragil am 2. Februar 2021

Ein großer Nachteil ist, dass Python dank GIL etc. grottenlangsam ist (JS und Lua sind viel schneller, obwohl die auch noch langsam sind). Es wäre schöner wenn sich schnelle Scriptsprachen oder einfach compilierte Sprachen mit extrem schneller inkrementeller Compilierung und viel Inferenz durchgesetzt hätten. Aber dank Go, Nim und Rust etc. ändert sich das vielleicht irgendwann mal.

tux.
Geschrieben von tux. am 2. Februar 2021

Pascal/ObjectPascal, eine kompilierte Sprache mit extrem schneller inkrementeller Kompilierung, hat sich doch bereits vor Jahrzehnten durchgesetzt.

tux.
Geschrieben von tux. am 1. Februar 2021

Alle unter „Warum also Python?“ aufgeführten Punkte gelten auch für Common Lisp - mit dem Unterschied, dass Python (nicht die nativen Kompilate aus Cython) eine der langsamsten Sprachen ist, SBCL (der bekannteste Common-Lisp-Compiler) unter bestimmten Umständen hingegen schnelleren Code erzeugen kann als C.

Mir ganz persönlich geht bei Python die Pflicht zur Einrückung von Code auf den Wecker.

scheme
Geschrieben von scheme am 1. Februar 2021

Da ist definitiv was dran. Das traurige ist, dass Beliebtheit - auch wenn sie hier gegeben sein mögen - keineswegs Rationalismen benötigt. Wobei ich trotzdem für Aufklärung wäre, auch wenn ich mich unnötig mit Seiteneffekten aufhalten mag :D (comp.lang.lisp).