Instagram feierte kürzlich den Wechsel von Python 2 zu Python 3. Doch viele bekannte Unternehmen nutzen noch immer Python 2.
Warum? Ein Wort: Kompatibilität.
Python 3 ist nicht „abwärtskompatibel“, was bedeutet, dass, wenn Ihr Unternehmen verschiedene Python-2-Bibliotheken verwendet, diese nach dem Upgrade möglicherweise nicht mehr funktionieren.
Firmen, die Code auf Python 2 laufen lassen, müssen eine schwierige Entscheidung treffen: Entweder müssen sie eine Ersatzbibliothek finden, die mit Python 3 funktioniert, oder sie sitzen mit Python 2 fest. Dropbox hat einen detaillierten Bericht über den Prozess geschrieben, der sie DREI JAHRE für das Upgrade benötigte.
Die Einführung von Python 3 war lange ein Thema in der Python-Gemeinde. Das ist immer noch so, obwohl es mittlerweile eine breite Unterstützung erreicht hat, wobei einige sehr populäre Projekte wie Django die Unterstützung von Python 2 ganz aufgegeben haben.
Sie haben richtig gelesen, Dropbox hat drei Jahre gebraucht, um das Upgrade von Python 2 auf Python 3 abzuschließen – und um Himmels willen, Guido Van Rossum (der Erfinder von Python) arbeitet bei Dropbox!
Python 3 ist mehr als 10 Jahre alt! Trotzdem verwenden viele Unternehmen noch Python 2. Welche Version der Sprache sollten Sie also lernen? In diesem Beitrag werde ich die Unterschiede zwischen Python 2 und Python 3 aufschlüsseln. Wenn Sie den Beitrag nicht lesen wollen, mein Rat:
Warum ist Python so beliebt?
- Intuitivität. Die Syntax (sozusagen die „Grammatik“ von Python) ist leicht zu verstehen.
- Ausgereift. Python ist eine bewährte Sprache mit mächtigen Funktionen, mit denen Sie so ziemlich alles programmieren können, was Sie sich vorstellen können.
- Gefragt. Python-Entwickler werden regelmäßig von einer Vielzahl von Unternehmen auf der ganzen Welt angeheuert.
- Fernbedienungsfreundlich. Sowohl Coding-Ninjas als auch Coding-Studenten benötigen lediglich eine Internetverbindung, um ihre Ziele zu erreichen.
- Python ist das neue Excel. Der Grund, warum Python in der Business School gelehrt wird, ist, dass Python wie Excel auf Steroiden ist. Mit Python können Finanzanalysten, CEOs und datengetriebene Marketingexperten die Leistungsfähigkeit von Python nutzen, um große Datenmengen zu verarbeiten.
Warum gibt es zwei Versionen von Python?
Im Land von Python ist jedoch schon seit einiger Zeit ein Wandel im Gange. Die Python Software Foundation, eine unabhängige Non-Profit-Organisation, die das Copyright an der Software hält, veröffentlichte 2010 die Version 2.7, während sie gleichzeitig die Codebasis auf verschiedene Iterationen von 3.x aktualisierte. Im Laufe der Jahre begannen Unternehmen und Projekte aufgrund der verschiedenen Vorteile auf Python 3 umzusteigen.
Warum Python 2?
Einer der wichtigsten Gründe, bei Python 2 zu bleiben, ist, wenn Sie mit einer großen Codebasis arbeiten wollen, die in Python 2 geschrieben wurde. Eine große Anwendung, die in einer älteren Version einer Sprache geschrieben wurde, zu verschieben oder in einer anderen Sprache neu zu schreiben, kann ein gewaltiges Unterfangen sein.
Ein weiterer Grund, im Land von Python 2 zu bleiben, ist, wenn Ihr Code von einer bestimmten Erweiterung abhängt, die ursprünglich für Python 2 geschrieben wurde und nicht aktualisiert worden ist. Die meisten von ihnen wurden aktualisiert, aber nicht alle. Es liegt an Ihnen zu entscheiden, ob es sich lohnt, mit älteren Erweiterungen (auch „Pakete“ genannt) weiterzuarbeiten.
Warum Python 3?
Um es kurz zu machen, Python 2 ist das Erbe, Python 3 ist die Zukunft. Wenn Sie anfangen, das Programmieren zu lernen – lernen Sie Python 3. Hier sind einige weitere Gründe, warum Sie Python 3 lernen sollten:
- Legacy-Code. Nach 2020 wird Python 2 nicht mehr gewartet.
- Lernen Sie Best-Practices. Python 3 enthält Erweiterungen, die in Python 2 nicht verfügbar sind.
- Schreiben Sie saubereren Code. Python 3 hat seine Struktur auf elegante Weise so verändert, dass weniger Codezeilen benötigt werden, um eine Aktion auszuführen.
- Vermeiden Sie Syntaxverwirrung. Es gibt einige kleine grammatikalische Unterschiede zwischen den beiden Versionen, die Anfänger frustrieren können.
Was sind die Unterschiede zwischen Python 2 und Python 3?
Eine der ersten Zeilen Python-Code, die Sie als Anfänger schreiben werden, wird sein, dem Computer zu sagen, dass er die Funktion print verwenden soll, um den Satz „Hallo Welt!“
Python 2:
Print "Hello world!”
Python 3:
print("Hello world!”)
Ergebnis: Der Computer gibt dasselbe zurück, aber Sie werden feststellen, dass in Python 3 viel häufiger in Klammern verschachtelter Code verwendet wird. Dafür gibt es auch programmatische Gründe: Python 3 ist viel einfacher zu lesen.
Hello world!
Wenn das nach einer Menge Klammern klingt, die Sie im Auge behalten müssen, keine Angst! Zu Beginn Ihres Lernprozesses werden Sie einen Texteditor installieren, der speziell darauf ausgelegt ist, fehlende Klammern und andere Syntaxfehler hervorzuheben – und sogar viele gängige Dinge für Sie automatisch auszufüllen.
Python-Variablen
Ein zweites Beispiel, das eine umfangreichere Verwendung von Klammern beinhaltet, ist das Ersetzen einer zurückgegebenen Zeile von vorbereiteten Text mit verschiedenen Variablen. Dies ist ein Teil der Operation, die passiert, wenn Sie sich für einen E-Mail-Newsletter anmelden und dieser auf magische Weise mit Ihrem tatsächlichen Namen an Sie adressiert wird.
Python 2:
User20987 = "Chris Castiglione”print "Hi, %, hope you’re having a great day today!” % (User20987)
Python 3:
User20987 = "Chris Castiglione”print("Hi {0}, hope you’re having a great day today!”).format(User20987))
Python-Funktionen
Ein weiterer großer Unterschied in der Syntax ist die Änderung der Funktion raw_input(). Dies ist eine sehr gebräuchliche Funktion, die Informationen aus verschiedenen Feldern auf einer Website übernimmt (z. B. wenn Sie sich für ein neues Konto anmelden und Ihre E-Mail-Adresse eingeben).
Python 2:
Field_1 = raw_input("entered_value”)
Python 3:
Field_1 = input("entered_value”)
Dies ist von größerer Bedeutung, als es den Anschein hat, denn es hat auch einen Einfluss darauf, wie der Computer den Code interpretiert. Python 2 wird die Eingabe automatisch „auswerten“, was unbeabsichtigte Folgen haben kann, wenn der Benutzer nicht die Art von Daten eingibt, die der Programmierer erwartet.
Angenommen, der Python-2-Programmierer hätte im obigen Beispiel erwartet, dass der Benutzer eine ganze Zahl eingibt, stattdessen hat er sich aber vertippt und die mathematische Operation „7-2“ eingegeben. Diese Codezeile würde die Zahl 5 zurückgeben, was nicht das gewünschte Ergebnis wäre.
Die Python-3-Version wertet die Eingabe standardmäßig nicht aus. Statt zu rechnen, wird eine Form von Daten zurückgegeben, die „String“ genannt wird, was in diesem Fall eine Kopie dessen wäre, was der Benutzer eingegeben hat: „7-2“. Mit diesem Ansatz können Sie genauer definieren, welche Art von Daten Sie vom Benutzer erhalten.
Warum ich empfehle, Python 3 zu lernen:
Die Leistung von Python 2 im Vergleich zu 3 in Bezug auf die Rechengeschwindigkeit hat sich dramatisch verbessert, aber Python 3 verbessert auch die bereits umfangreichen Fähigkeiten von Python 2.
Hier sind einige coole neue Dinge, die Sie am Anfang lernen werden:
- Einfachere Benutzereingabe. Eine häufige frühe Lektion ist es, die vom Benutzer eingegebenen Daten zu nehmen (z. B. die oben verwendete Eingabesyntax) und sie an ein einfaches Skript weiterzugeben, um eine Liste von Informationen zu erstellen. Python 3 verbessert diesen Prozess.
- Verbesserte Zahlenverwaltung. Python 3 enthält einige Verbesserungen bei mathematischen Berechnungen, die für viele Anwendungen wichtig sind.
- Gebräuchliche Add-ons werden unterstützt. Sie lernen auch das Konzept der Erweiterungen namens „Module“ und „Pakete“ kennen, die nicht in der Standardinstallation von Python 3 enthalten sind. Mit zunehmender Erfahrung werden Sie diese installieren und verwenden können und so zu Ihrem täglichen Repertoire gehören. Fast alle der beliebtesten Pakete sind schon seit Jahren Python 3-fähig.
- Unicode-Unterstützung. Wussten Sie, dass Emojis Unicode-Zeichen sind? Keine Emojis in Python 2! 😉 😎 😃
- Und es gibt noch mehr! Hier sind sechs Dinge, die Sie wissen sollten, bevor Sie Python lernen.
Wie bekomme ich Python 3 auf meinen Computer?
Viele brandneue Computer haben standardmäßig noch Python 2.7 vorinstalliert, aber es lohnt sich, zu lernen, wie man Python 3 auf seinem eigenen Rechner installiert und benutzt.
Der Kurs „Einführung in Python“ führt Sie durch die Installation von Python 3 auf Ihrem persönlichen Rechner, da der Prozess dazu von Betriebssystem zu Betriebssystem variiert.