Python ist eine Programmiersprache aus dem Jahr 1991. Der Vater der Sprache ist Guido van Rossum. Die Sprache wurde nicht, wie oft fälschlicherweise angenommen wurde, nach der Schlangenart Python benannt, sondern nach der Britischen Comedy Show Monty Python’s Flying Circus, also der Komikergruppe Monty Python. Von dieser war Guido van Rossum ein großer Fan, sodass dies der Arbeitstitel der Sprache wurde und letztendlich auch der finale Name.
Quelle: https://de.wikipedia.org/wiki/Guido_van_Rossum (Abgerufen am 24.04.2022)
Python habe ich oft als einfach Sprache wahrgenommen. Grade von der Syntax her hat die Sprache eine sehr verkürzte Schreibweise. Wobei man beachten muss, dadurch das die Syntax so einfach ist und Python als erste Sprache gelernt wird kann später das wechseln zu einer anderen Programmiersprache schwerer sein, weil Python sich eben sehr stark von vielen anderen Sprachen syntaktisch unterscheidet.
Das Zen of Python sind Prinzipien, die ein Python-Programmierer befolgen sollte. Als kleines Easter Egg kann man diese mit "import this" auch direkt in Python ausgeben lassen.
Ich habe das Zen of Python einmal ins Deutsche übersetzt. Geschrieben von Tim Peters.
Schön ist besser als hässlich.
Explizit ist besser als implizit.
Einfach ist besser als komplex.
Komplex ist besser als kompliziert.
Flach ist besser als verschachtelt.
Spärlich ist besser als dicht.
Lesbarkeit zählt.
Sonderfälle sind nicht speziell genug, um die Regeln zu brechen.
Obwohl Praktikabilität die Reinheit übertrifft.
Fehler sollten niemals lautlos passieren.
Es sei denn, sie werden ausdrücklich zum Schweigen gebracht.
Im Angesicht von Mehrdeutigkeit sollte man der Verführung widerstehen, zu raten.
Es sollte einen - und vorzugsweise nur einen - offensichtlichen Weg geben, es zu tun.
Auch wenn dieser Weg anfangs vielleicht nicht offensichtlich ist, es sei denn, man ist Niederländer.
Jetzt ist besser als nie.
Obwohl "nie" oft besser ist als jetzt.
Wenn die Umsetzung schwer zu erklären ist, ist es eine schlechte Idee.
Wenn die Implementierung leicht zu erklären ist, kann sie eine gute Idee sein.
Namespaces sind eine großartige Idee - lasst uns mehr davon machen!
Guido van Rossum hat im Jahre 1999 folgende Ziele für Python festgehalten:
Quelle der Ziele: https://de.wikipedia.org/wiki/Guido_van_Rossum (Abgerufen am 24.04.2022)
Durch die früh definierten Ziele für Python durch Guido van Rossum wurde schnell klar, dass Python eine sehr einfache Sprache sein soll. In Python Version 2 war es zum Beispiel so das Konsolen Ausgaben wie ein Return mittels print deineVariable
zurückgegbene werden konnten in Python 3 wurde dann von einer Schlüsselwort Syntax zu einer Funktions Syntax gewechselt.
Grade in den Bereichen der Wissenschaft, künstliche Intelligenz (PyTorch, Theano, TensorFlow), Automatisierung (Web Scraping → Selenium, Beautiful Soup 4), CAD Anwendungen (Zum Beispiel die Slicing Software Ultimaker Cura für 3D Drucker hat große Teil, die mittels Python umgesetzt wurden)
Am Anfang fragst du dich wahrscheinlich, warum du dich für Python als erste Programmiersprache entscheiden solltest. Ich habe hier ein mal vier Gründe aufgelistet, die ich entscheidend finde.
Die Syntax von Python hat eine sehr einfache Schreibweise, die dem regulären Englisch noch am nächsten ist. Es kommt mit extrem wenigen Klammern aus und regelt sehr viel über Einrückungen. Ich finde es immer gut, wenn man lernt relative früh gut einzurücken, da es auch in anderen Programmiersprachen sinnvoll ist, wo du nicht unbedingt darauf angewiesen bist, da so die Lesbarkeit gesteigert wird.
In Python komplexe Anweisungen zu erstellen, ist meistens in einer sehr kleinen Zeilenanzahl möglich. Das hilft auch am Anfang einen guten Überblick über deinen Programm Code zu behalten.
Die Python Community, sei es auf YouTube, Discord Servern, Webseiten, StackOverflow oder Reddit, ist häufig sehr groß und hat viele erfahrende Leute an Board die gerne helfen. Dadurch hast du bei Python extrem viele Anlaufpunkte, wo du nachfragen kannst, wenn etwas nicht wie gewünscht funktioniert.
Sei es ein Spiel mit PyGame, eine Webseite mit Django, ein Terminal Programm, eine API mit Flask oder FastAPI, eine Künstliche Intelligenz mit TensorFlow oder Datenanalyse mit NumPy, Pandas und Co. Mit Python hast du eine Vielzahl an Möglichkeiten, was du entwickeln kannst - und gerade am Anfang weiß man ja auch häufig noch nicht so genau was man einmal entwickeln möchte. Dort empfinde ich Python als einen guten Einstiegspunkt.
Diese Frage wird leider oft gestellt und kann nicht konkret beantwortet werden. Denn es ist immer eine Frage, was du genau vorhast. Eine einfaches Terminalprogramm ist schnell geschrieben und verstanden - das kann in einer Woche mit etwas Aufwand erfolgreich erstellt werden. Auch als Anfänger, wenn es dann darum geht, mit TensorFlow zum Beispiel Daten auf Bildern zu erkennen, kann man auch schon mal länger brauchen.
Es ist auch immer eine Frage wie viel man denn Lernen möchte. Ich weiß definitiv nicht alles über Python, aber genug um Dokumentationen lesen zu können und anhand dieser in Python alles umzusetzen, was ich mir vorstelle, wenn du also anfängst, zu lernen gibt es keinen Punkt, an dem du sagst, jetzt bin ich fertig.
Das hängt davon ab, ob du bereits Erfahrungen in anderen Programmiersprachen hast oder nicht. Wenn es deine erste ist, hast du eine gute stabile Lernkurve bei Python. Es ist keine besonders anspruchsvolle Sprache aber alle wichtige Konzepte sind vertreten um das Programmieren zu erlernen.
Ein späteres Lernen einer anderen Programmiersprache, nach dem Lernen von Python, kann sich aber ggf. als schwer herausstellen weil es doch im Verhältnis zum überwiegenden Teil der Programmiersprachen eine sehr gewöhnungsbedürftige Syntax hat.
Um nun mit Python wirklich programmieren zu können, benötigt ihr noch einen guten Code-Editor für Python. Ich kann euch zwei Code-Editoren bzw. IDE für Python empfehlen. Eine IDE ist ein besserer Code-Editor kurz gesagt.
Die PyCharm Community Edition ist für jeden geeignet, Open Source und kostenlos. Diese IDE richtet sich an Python-Entwickler - so ist sie genau auf Python zugeschnitten und hat ihre Vorteile.
Visual Studio Code ist ein Code-Editor von Microsoft für Windows, Mac und Linux. Dieser Code-Editor unterstützt eigentlich jede Sprache, und wenn es keine native Unterstützung gibt, dann gibt es eine Extension, die die gewünschte Sprache unterstützt und euch das Arbeiten leichter macht.
https://code.visualstudio.com/
Im Zusammenhang mit Python kommt immer wieder eine Frage bei Anfängern auf: ob man nun Python 2 oder 3 lernen sollte? Feststeht, dass es zwischen 2 und 3 ein paar gravierende Unterschiede gibt, es ist nicht so wie bei den meisten Programmiersprachen, dass zwischen 2 und 3 eine Aufwärtskompatibilität reibungslos möglich ist. Es gibt Kleinigkeiten, die aber groß genug sind, dass Python 2 Code nicht problemlos in Python 3 läuft.
Python 2 und Python 3 wurden lange Zeit parallel weiterentwickelt, aber seit April 2020 hat Python 2 kein neues Release mehr erhalten (EOL - End of Life) die letzte Version ist 2.7.18. Die populärste Python 2 Module wurden auf Python 3 übertragen.
Aus diesen Gründen würde ich euch empfehlen, mit Python 3 zu starten. Falls ihr irgendwann in eurer Entwicklerlaufbahn doch einmal nicht um Python 2 herumkommt, kann ich euch auch beruhigen; die Unterschiede sind nicht so gravierend, als dass man sie nicht in einigen Tagen lernen könnte, sofern man bereits Python 3 beherrscht. Und solange ihr Python 2 nicht braucht, lernt sie auch nicht.
Die Installation von Python 3 kann über verschiedene Optionen laufen, hier muss du prüfen welches Betriebsystem du verwendest und welche Voraussetzungen du hast um die für dich optimale Variante zu verwenden.
Die Installation von Python mit dem Installer unter Windows & macOS ist sehr einfach. Es ist aber bei Windows eine Besonderheit zu beachten, um über die Command Line Python abrufen zu können:
Um Python auf macOS zu installieren, benötigst du nur den Befehl brew install python
Anschließend kannst du via python
oder python3
auf den interaktiven Modus von Python zugreifen. Dieser ist davon abhängig, ob du bereits eine Python 2 Version installiert hast oder nicht.
Ab macOS Monterey wird bei der interaktiven Shell für Python 2.7 eine Warnung ausgegeben, das diese Version bald aus dem macOS Core entfernt wird, also kann es dort gut möglich sein, dass keine vorinstallierte Python Version mehr vorhanden ist.
Eine Anleitung für diese Art der Installation hat auch Programmieren mit Chris einmal erklärt:
Für die Linux Nutzer*innen unter euch, die Erfahrung mit der Command Line haben empfehle ich die Verwendung von pyenv, diese ist im nachfolgenden Abschnitt etwas detaillierter beschrieben, wo die Vorteile liegen.
Für Command Line Anfänger*innen empfehle ich für Debian/Ubuntu die Verwendung des folgenden Befehls – diese sollte unter den Standard Linux Systemen funktionieren.
sudo apt install python3
Falls diese Variante für dich nicht funktionieren sollte, prüfe bitte welches Linux System du hast und suche dir die entsprechenden Pakete heraus. Die Vielzahl an Linux Systemen ist leider zu groß, um dort für alle den besten Installations-Weg zu beschreiben.
Unter macOS bin ich seit langer Zeit schon sehr zufrieden mit pyenv. Dieses Tool bietet die Möglichkeit zwischen vielen verschiedenen Python Version zu wechseln on the fly.
Für Windows gibt es auch eine Alternative pyenv-win allerdings kann ich dazu keine Erfahrungswerte nennen, da ich seit einigen Jahren primärer macOS Nutzer bin.
Die Installation ist leider etwas aufwendiger als die vorangegangenen Möglichkeiten. Weshalb ich hier keine eigene Anleitung erstellt habe, sondern auf die von pyenv verweise. Da sie je nach Shell und Betriebssystem sehr unterschiedlich ausfallen kann.
Die Originalinstallation findest du hier: https://github.com/pyenv/pyenv#installation
Als direkte*r Anfänger*in benötigst du diese Art der Installation meistens nicht. Falls du schon Erfahrung mit einer Shell hast, ist es sicherlich sinnvoll diesen Weg zu wählen, gerade wenn du mit verschiedenen Versionen später arbeiten willst.
Unter Python gibt es wie bei anderen Programmiersprachen auch sogenannte Module/Pakete, die nach installiert werden können und von dritten programmiert wurden. Um diese Pakete zu installieren ist ein Paketmanager notwendig. Dieser Paketmanager hat die Bezeichnung pip – eine ausführliche Installations-Anleitung findest du hier von mir geschrieben. Dort erkläre ich auch noch einmal detaillierter, was pip genau ist!
Nachdem wir nun unseren Code-Editor installiert und Python startklar gemacht haben, können wir unser erstes Programm schreiben.
Als erstes Programm zeige ich euch einmal das typische Hello-World-Programm und dann einmal die Berechnung von 30 % eines Kreises in der Angabe "Grad" (Winkel).
Das Hello-World-Programm in Python ist sehr kurz, daran könnt ihr bereits sehen wie einfach die Syntax ist.
print("Hello World")
Das Programm zur Berechnung von 30 % eines Kreises in der Einheit Grad sieht wie folgt aus:
kreis = 360
prozent = 30
grad = (kreis/100) * prozent
print(grad)
Python erwartet keine explizite Definition von Variablen. Eine einfache Zuweisung mit Gleichheitszeichen ist ausreichend. Führen wir den Code nun aus, wird die Variabel "grad" den Wert 108 enthalten. Jetzt wissen wir, dass 30% eines Kreises 108° entsprechen.
Um ein Programm auszuführen, gehst du per CMD oder Terminal in das Verzeichnis deiner Datei mit dem Code. In unserem Beispiel habe ich die Datei für die Kreisberechnung einfach nur kreis_berechnung.py genannt.
Jetzt kannst du mit folgendem Befehl die Datei ausführen, wenn du in dem Verzeichnis bist. Tippst du den folgenden Befehl "python kreis_berechnung.py" durch den Print-Befehl, wird die Gradzahl von 108 ausgegeben.
Wichtig alle aufgelistete Lernquellen sind kostenlos, natürlich gibt es auch gute kostenpflichtige. Aber da Python eine große und großartige Community hat, kann man sehr viel mit freiverfügbaren Videos, Büchern und Webseiten lernen.
Grade die Playlist von Morpheus auf YouTube war gerade für mich als Einsteiger in 2018 eine sehr große Hilfe um den Einstieg in diese großartige Sprache zu finden.
Mit diesen Lernquellen und ggf. auch unser Discord Server für Nachfragen bist du gut aufgestellt, um Python erlernen zu können. Falls du weitere gute Anleitungen kennst, um in Python zu starten, kannst du die Links gerne in die Kommentare posten.
Python ist eine großartige Sprache je nach Umfeld, für die du diese einsetzen willst. Gerade in Lernumgebungen erfreut sich Python einer großen Beliebtheit. Aber auch Jobs im Bereich der Python Umgebung zu erlangen ist nicht unmöglich, gerade in der Daten-Analyse, Backend Development und Web Entwicklung mit Django gibt es Jobs.
Hinterlasse mir gerne einen Kommentar zum Artikel und wie er dir weitergeholfen hat beziehungsweise, was dir helfen würde das Thema besser zu verstehen. Oder hast du einen Fehler entdeckt, den ich korrigieren sollte? Schreibe mir auch dazu gerne ein Feedback!
Vielen Dank für deinen Hinweis!
Inzwischen wurde der Abschnitt für Homebrew ergänzt. Für Choco konnte ich das ganze leider nicht beschreiben, da ich kein aktiver Windows-Nutzer mehr bin. 12.02.22
Hay Hay,
ich find den Artikel schön geschrieben und einfach zu verstehen.
Es gibt kein großes kompliziertes irgendwas und man bekommt auch gesagt was man denn so braucht um durchzustarten.
Cool wäre eventuell noch der Hinweis gewesen das man Python auch via Package-Manager wie Choco oder Brew installiert werden kann.
Weiter so und weiter so interessante Texte ^^
Werde mich hier noch bisschen umsehen.