Frage

Vor kurzem habe ich beschlossen, meine Programmierung Horizont zu erweitern und den Python-Programmiersprache zu lernen. Während ich Python ein wenig für Klassen in der Schule und für ein Projekt oder zwei bei der Arbeit benutzt habe ich gar nicht bin: ein Experten. Meine Frage lautet wie folgt: Soll ich mit den 2.x-Versionen stören oder sollte ich gehen Sie direkt zu 3.0? Ich bin Neigung in Richtung 3.0, da ich Anwendungen Programmierung wird mehr für den persönlichen / Lernen verwenden, aber ich wollte sehen, ob es gute Argumente gegen sie waren, bevor ich begann.

War es hilfreich?

Lösung

Absolut nicht 3,0-3,1 ist und ist stabiler, besser, schneller in jeder Hinsicht; es macht absolut keinen Sinn mit 3,0 zu diesem Zeitpunkt zu starten, wenn Sie die 3-Serie in Anspruch nehmen wollen soll es auf allen 3.1-Konten sein.

Wie bei 2.6 vs 3.1, 3.1 ist eine bessere Sprache (vor allem, weil einige cruft wurden entfernt, die im Laufe der Jahre angesammelt hatte, hat aber in 2 * für die Abwärtskompatibilität bleiben), aber die ganzen Rest des Ökosystems (von Erweiterungen noch sehr viel zu Gunsten von 2,6 ist es, Werkzeuge von Büchern zu kollektivem Wissen,) - wenn Sie nicht über die Möglichkeit, verwenden (zB) bestimmte GUIs oder wissenschaftliche Erweiterungen bereitstellen auf App Engine, Skript von Windows mit COM ist es egal, hat eine spiffy IDE dritten, und so weiter, 3.1 empfiehlt sich, aber wenn man über solche Dinge kümmern, noch 2. * für jetzt.

Andere Tipps

Mit 3.1

Warum?

1) Denn solange jeder noch 2.6 verwenden, werden die Bibliotheken weniger Gründe haben, auf 3,1 zu migrieren. Solange diese Bibliotheken nicht auf 3.1 portiert werden, werden Sie entweder mit der Wahl stecken nicht die Stärken von 3,1, oder nur die Arbeitsplätze auf halbem Weg zu tun, indem Sie die hackish Lösung der Verwendung eines Back-portierte Feature-Set verwenden. Seien Sie ein Vordenker und helfen Python nach vorne schieben.

2) Wenn Sie lernen und 3.1 jetzt verwenden, müssen Sie nicht es später wieder lernen, wenn die Masse-Anschluss abgeschlossen ist. Ich weiß, dass einige Leute sagen, man wird nicht viel lernen müssen, aber warum den alten Mist überhaupt lernen? Python selbst ist auf 3.1 zu bewegen, werden die Bibliotheken zu 3.1 bewegen, und es saugt catch-up zu haben, zu spielen und wieder lernen, eine Sprache, die Sie bereits verwenden.

3) 3.1 alles um eine bessere Sprache ist , stabile und konsistenter als 2,6 ... das ist normal. Die Lehren, die aus 2,6 waren alle in 3.1 gegossen, um es besser zu machen. Es ist ein Prozess namens PROGRESS . Aus diesem Grund ist niemand noch verwendet Windows 3.1. Es ist die Art und Weise Dinge vorwärts zu bewegen. Warum sonst glauben Sie, sie sich die Mühe zurück ging ein Feature-Set in erster Linie die Portierung?

4) Wenn Sie Python lernen, und 2.6 lernen, dann durch die Zeit, die Sie wirklich komfortabel mit der Sprache sind, werden die Ports aus, und Sie werden die Bibliotheken lernen und die Sprache noch einmal. Wenn Sie mit 3,1, dann durch die Zeit, die Sie bequem mit der Sprache beginnen, die Ports aus sein werden, und dann können Sie die Bibliotheken lernen, die Sie interessieren. Es ist ein glatter Prozess .

5) ein besserer Entwickler sein. Wenn Sie lernen und die gleichen Dinge neu lernen, Ihr Verständnis wird nicht sehr tief sein. Durch das Erlernen dieser Sprache, und seine Bibliotheken nur einmal, werden Sie mehr Zeit mit ihnen zu arbeiten, anstatt Syntax Umlernen. Auf diese Weise können Sie sie besser verstehen. Wenn Sie fehlen wirklich einige Stücke, indem Sie auf den Bibliotheken zu verzichten? SCHREIBE IHNEN. Sie werden wahrscheinlich eine ganze Bibliothek nicht benötigen, und können in der Regel nur solche Stücke schreiben, die Sie brauchen, und entwickeln Werkzeuge für sich. Dies wiederum hilft Ihnen, die Sprache besser zu verstehen und tiefer.

Kurze Antwort:. Beginnen Sie mit Python 2.6

Warum: Die Programmierung ist mehr Spaß und nützlich, wenn Sie die Arbeit von anderen nutzen können. Dies bedeutet oft, 3rd-Party-Bibliotheken. Viele der beliebtesten Bibliotheken für Python haben noch nicht 3.x Unterstützung. PIL und NumPy / SciPy in den Sinn kommen. Mein Liebling Dolmetscher, ipython, funktioniert auch nicht mit 3,0 noch. Viele Einheit Test-Frameworks und Web-Frameworks sind auch nicht auf 3.0 vor.

Wenn Sie also viele Türen in 3.x beginnen werden Sie geschlossen werden, zumindest bis 3.x Portierung auf Dampf erfolgt. Es gibt zwar viele nette Features in Python 3.x, aber einige von ihnen haben auf 2,6 zurückportiert und einige mehr wird es in 2,7 machen. Halten Sie sich also mit 2,6 für jetzt und neu bewerten 3.x in einer Zeit des Jahres oder so.

Ich denke, dass Sie besser sein werden served gehen direkt in 3.0. Es sei denn, Sie eine Legacy-Code-Basis zu kämpfen haben, gibt es nur sehr wenige Vorteile zu lernen, die 2.xx Möglichkeiten, Dinge zu tun.

In der Python-Welt (wie in den meisten anderen, wirklich), Veröffentlichungen dazu neigen, eine Weile dauern, bis alle der Teilprojekte wandern nach unten, aber wenn Sie jemals das Bedürfnis finden 2.xx den Übergang zurück, I don‘ t denken, dass Sie Umlernen Dinge finden besonders schmerzhaft sein.

Sie sollten Sie mit der neuesten Version von jeder Programmiersprache gehen lernen, wenn Sie einen bestimmten Grund haben nicht . Da Sie ein vorhandenes Projekt nicht haben, die mit Python 3.0 wird nicht funktionieren, sollten Sie fühlen sich frei, die neueste Version zu verwenden.

Verwenden Sie Python 3.1, Luke.

Python 3.1 sollte nicht verwendet werden, bis andere Bibliotheken für sie mit Unterstützung gefangen werden.

Sie sollten 2.6 jetzt verwenden. Es verfügt über mehrere 3.x verfügen, um es zurückzuportiert, so dass auf 3.x migrieren wird später nicht schwierig sein, und Sie werden nicht obsolet Praktiken lernen.

Die gute Nachricht ist, dass es nicht wirklich so hart ist, sowohl Python 2.x und 3.x. lernen Sie können die neueste Version 2.x als mit dem System Python ausführen Skripte standardmäßig registrierte Version installieren, sondern auch die neueste Version 3.x installieren explizit ausgeschaltet zu treten, wenn Sie wollen. Das ist, was ich auf meinem Windows Vista-System haben.

Dann wird das Schlüsseldokument die Unterschiede zwischen den Versionen 2.x und 3.x für das Lernen ist:

http://docs.python.org/3.1/whatsnew/3.0.html

Wenn Sie lesen Materialien gibt Python zu lernen, die auf 2.x basieren und beziehen sich auch auf das „Was ist neu in Python 3.0“ Link oben, werden Sie ein Verständnis davon, wie die Dinge geändert. Sehen Sie auch die andere, was ist neu docs, wie für die Unterschiede zwischen 3.0 und 3.1, aber der Link über den Hauptgrund ist die 2.x vs. 3.x Änderungen zu verstehen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top