Definition

Was ist Python?

| Autor / Redakteur: Stefan Luber / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Python ist eine Programmiersprache, die dank ihrer klaren Syntax und einfachen Lesbarkeit leicht zu erlernen ist und sich sehr vielseitig einsetzen lässt. Für die gängigen Betriebssysteme ist Python frei verfügbar. Die üblichen Programmierparadigmen wie die objektorientierte oder funktionale Programmierung werden unterstützt.

Bei Python handelt es sich um eine Programmiersprache mit einer klaren Syntax und guten Lesbarkeit. Sie gilt als leicht zu erlernen und ist in den gängigen Betriebssystemen interpretierbar. Der Name leitet sich von „Monty Python's Flying Circus“ ab. Python unterstützt mehrere Paradigmen der Programmierung wie die funktionale, objektorientierte oder aspektorientierte Programmierung und ist auch als Skriptsprache nutzbar.

Entwickelt wurde Python von Guido van Rossum am Centrum Wiskunde & Informatica in Amsterdam zu Beginn der 1990er-Jahre. Seit Mitte 2018 steht die Programmiersprache in der aktuellen Version 3.7 zur Verfügung. Der Python-Quell-Code ist unter der Python-Software-Foundation-License frei verfügbar. Im Netz existiert eine breite Anhängerschaft und große Community.

Grundzüge der Syntax und zentrale Merkmale der Programmiersprache Python

Python genießt einen Ruf als einfache und saubere Programmiersprache mit klarer Struktur. Ihr Programmcode ist intuitiv nutzbar und gleichzeitig leicht lesbar. Trotz der Einfachheit bietet Python eine gute Skalierbarkeit und ist für komplexe Softwareprojekte einsetzbar. Aufgrund der ausdrucksstarken, minimalistischen Syntax sind Anwendungen mit wenigen Codezeilen und geringer Anfälligkeit für Programmierfehler realisierbar. Um für Einfachheit und Übersichtlichkeit zu sorgen, kommt Python mit sehr wenigen Schlüsselwörtern aus und verwendet Einrückungen als Strukturierungselemente.

Im Gegensatz zu vielen anderen Sprachen sind die verschiedenen Blöcke nicht durch bestimmte Schlüsselwörter oder Klammern markiert, sondern durch das Einrücken der einzelnen Programmierzeilen. Ein weiteres wichtiges Merkmal ist die automatische Speicherverwaltung. Der Speicher für Variablen oder Arrays ist nicht explizit zu definieren und zuzuweisen. Speicherleck-Fehler lassen sich dadurch in der Programmierung drastisch reduzieren. In Python-Programmen ist es aufgrund der dynamischen Typisierung nicht notwendig, Typen von Variablen oder Funktionsargumenten zu definieren. Python besitzt nur wenige syntaktische Konstruktionen. So existieren mit „for“ und „while“ beispielsweise nur zwei Schleifenformen. Die For- und While-Schleifen können im Vergleich zu zahlreichen anderen Programmiersprachen einen Else-Zweig beinhalten. Generelle Verzweigungsmöglichkeiten bestehen über die Befehle if, elif und else.

Da Python eine sogenannte Multiparadigmensprache ist, sind Programmierer nicht an einen bestimmten Programmierstil gebunden. Für die verschiedenen Aufgaben kann der jeweils optimal passende Programmierstil gewählt werden. Python erlaubt es, Python-Programme als einzelne Module in andere Sprachen einzubetten.

Entwicklungsumgebungen für Python

Grundsätzlich ist für Python keine Entwicklungsumgebung notwendig, da Pythoncode nicht kompiliert werden muss und Skripte sich mit beliebigen Texteditoren schreiben lassen. Interpreter sind interaktiv und erlauben mit den Möglichkeiten der Sprache zu experimentieren. Gängige von Programmierern genutzte Editoren wie Emacs oder Vim sind für Python anpassbar. Oft ist gemeinsam mit Python IDLE installiert. IDLE besteht aus einer Shell, einer Textumgebung und Debuggingfunktionen, stellt aber keine vollwertige Entwicklungsumgebung (IDE – Integrated Development Environment) dar. Beispiele für vollwertige Entwicklungsumgebungen sind Eric Python IDE oder PyCharm. Für große IDEs wie NetBeans, Eclipse oder Visual Studio existieren Plug-ins für Python. Grafische Benutzeroberflächen sind mit verschiedenen GUI-Toolkits relativ einfach erstellbar.

Vorteile der Programmiersprache Python

Die Programmiersprache Python bietet eine Vielzahl an Vorteilen. Im Folgenden kurz zusammengefasst die wichtigsten Vorzüge:

  • einfache Syntax
  • einfach zu erlernen aufgrund der geringen Anzahl an Schlüsselwörtern und der klaren Struktur
  • keine Variablendeklaration notwendig
  • umfangreiche Standardbibliothek vorhanden
  • wenig fehleranfällig
  • weniger Codezeilen im Vergleich zu vielen anderen Programmiersprachen
  • einfach zu lesender und zu wartender Code
  • Unterstützung verschiedener Programmierparadigmen
  • gute Erweiterbarkeit dank einer großen Sammlung von Python-Add-on-Paketen
  • gute Skalierbarkeit
  • für komplexe Aufgaben und fast alle Anwendungsprobleme geeignet
  • für die gängigen Betriebssysteme nutzbar
  • frei verfügbar
  • ständige Weiterentwicklung der Programmiersprache und große Community

Einsatzmöglichkeiten von Python

Für die gängigen Betriebssysteme ist Python frei verfügbar. In vielen Linux-Distributionen gehört die Programmiersprache zur Standardausstattung. Auch auf vielen mobilen Betriebssystemen ist Python einsetzbar. Für Webserver steht mit WSGI (Web Server Gateway Interface) eine universelle Schnittstelle zwischen Server und Python zur Verfügung.

Aufgrund des einfachen Einstiegs in die Programmierung mit Python und der Vielzahl verfügbarer wissenschaftlicher Bibliotheken ist die Programmiersprache im Wissenschaftsumfeld weit verbreitet. Ein weiteres wichtiges Einsatzgebiet ist die Forschung und die Programmierung von Anwendungen im Bereich der Künstlichen Intelligenz (KI) und des maschinellen Lernens. Beispielsweise existiert mit TensorFlow eine mächtige Bibliothek für die Realisierung von KI-Anwendungen und das maschinelle Lernen. Gründe für die Beliebtheit der Programmiersprache in diesem Bereich sind die Leistungsfähigkeit und gute Skalierbarkeit von Python. Viele kommerzielle Projekte wie YouTube oder Google basieren ebenfalls in Teilen auf Python.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Algorithmen lernen mal ganz anders

Buchrezension

Algorithmen lernen mal ganz anders

Programmieren ist für Viele ein Buch mit sieben Siegeln. Wer verstehen will, wie wichtige, häufig eingesetzte Algorithmen funktionieren, um Probleme zu lösen, muss nicht unbedingt über eine Programmiersprache einsteigen. Das beweist dieses Buch. lesen

So deckt der Local Outlier Factor Anomalien auf

Grundlagen Statistik & Algorithmen, Teil 7

So deckt der Local Outlier Factor Anomalien auf

Um Trends zu erkennen, wird oft die Clusteranalyse herangezogen. Der k-Means-Algorithmus etwa zeigt an, wo sich Analyseergebnisse in einer Normalverteilung ballen. Für manche Zwecke ist es aber aufschlussreicher, Ausreißer zu untersuchen, denn sie bilden die Antithese zum „Normalen“, etwa im Betrugswesen. Der Local-Outlier-Factor-Algorithmus (LOF) ist in der Lage, den Abstand von Ausreißern zu ihren Nachbarn zu berechnen und deckt so Anomalien auf. lesen

Mit Apache Zeppelin Daten analysieren

Interaktives Notizbuch für Big Data

Mit Apache Zeppelin Daten analysieren

Das Apache-Toplevel-Projekt Zeppelin bietet ein Notizbuch für Daten aus anderen Systemen, mit denen Anwender diese effektiv analysieren können. Zeppelin arbeitet dazu eng mit Spark, Flink und Hadoop zusammen. lesen

SAP HANA unterstützt Persistent-Memory-Technik

Funktionsumfang ausgebaut

SAP HANA unterstützt Persistent-Memory-Technik

Der Softwarekonzern SAP hat Erweiterungen für die Cloud- und On-Premises-Versionen seiner HANA-Datenbank angekündigt. Dazu zählen unter anderem erweitere Cloud-Unterstützung, Support von Intels Persistent-Memory-Technik sowie neue Machine-Learning-basierte Funktionen. lesen

Preventive Maintenance – Fehlerprognose mit Machine Learning

Kommentar von Dr. Olaf Nimz, Trivadis

Preventive Maintenance – Fehlerprognose mit Machine Learning

Die Entscheidung, Maschinenteile vorsorglich auszutauschen oder Maschinen erst nach einem Schaden zu reparieren, erfordert von Betreibern von Industrieanlagen und Prozessverantwortlichen eine sorgfältige Kosten-Nutzen-Abwägung. Ist genauer vorhersehbar, wann ein Teil ausfällt, könnten Wartung und Instandhaltung im Hinblick auf planbare und kürzere Stillstandszeiten optimiert werden. lesen

FICO Xpress Insight wird Teil der Community-Lizenz

Operationalisierung von Modellen

FICO Xpress Insight wird Teil der Community-Lizenz

Der Spezialist für Predicitive Analytics und Data Science FICO hat seine FICO Xpress Community-Lizenz um seine Lösung Xpress Insight ergänzt. Sie ermöglicht die Operationalisierung von Advanced-Analytics-Modellen. lesen

Datenaufbereitung ist ein unterschätzter Prozess

Data Preparation

Datenaufbereitung ist ein unterschätzter Prozess

Der Prozess der Datenaufbereitung umfasst die Reinigung, Formung und Mischung von Daten, damit sie für analytische und andere Aufgaben in optimaler Qualität bereitstehen. Nur mit erstklassigen Daten lassen sich beispielsweise Lösungen für Machine Learning und Künstliche Intelligenz effizient, sicher und zuverlässig versorgen. lesen

Darauf kommt es bei der Wahl der richtigen BI-Lösung an

Kommentar von Robert Schmitz, Qlik

Darauf kommt es bei der Wahl der richtigen BI-Lösung an

Es spricht viel für die datengetriebene Neuaufstellung von Geschäftsprozessen, die Vertiefung von Kunden- und Lieferantenbeziehungen auf der Basis valider Datenauswertungen oder für ein ausgewogenes Risiko/Rendite-Verhältnis, das sich an profunden Analytics-Ergebnissen statt am Bauchgefühl orientiert. Damit Analytics-Projekte auch wirklich verwertbare Entscheidungsgrundlagen liefern, gilt es, die passende Business-Intelligence-Lösung für die gesetzten Ziele zu finden. lesen

Das kann Azure Databricks

Spark as a Service

Das kann Azure Databricks

Microsoft stellt mit Azure Databricks eine Analyseplattform in Microsoft Azure zur Verfügung, die auf der bekannten Analysesoftware Apache Spark aufbaut. Bei der Entwicklung der Plattform haben die Entwickler von Spark mitgearbeitet. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45383261 / Definitionen)