Liens connexes

Dépêche modérée par

Dépêche éditée par

: Nouvelle version majeure de Python (2.6)

Posté par Victor STINNER (page perso, ). Modéré le 02 octobre 2008.
32
En attendant la sortie de Python3 prévue mi-octobre, le langage de programmation Python sort en version 2.6. Cette version vise à préparer la migration vers Python3 et apporte énormément de nouveautés, aussi bien dans le langage que dans la bibliothèque standard. Les principales nouveautés sont décrites dans la seconde partie de cet article.

Le développement de Python est ouvert et suit les propositions d'améliorations (PEP). L'outil de suivi de bugs (bugs.python.org) a migré de Sourceforge à une installation personnalisée de Roundup. La documentation LaTeX a été convertie dans le format reStructuredText et est maintenant compilée avec l'outil Sphinx, développé pour l'occasion.

> Lire la suite (47 commentaires, moyenne: 2,6).   [dépêche : 5340 caractères]

Améliorations du langage

Nouveaux modules et nouvelles classes

Compatibilité avec Python3

Nombreuses fonctionnalités Python3 sont accessibles de manière optionnelles, par exemple par le module future_builtins :

Interprète Python

Faut-il migrer à Python3 ?

Python2 n'est pas près d'être remplacé par Python3. La migration se fera en douceur et progressivement.

Pour l'instant, il est recommandé d'écrire du code Python2 et le convertir avec l'outil 2to3 (intégré dans Python 2.6). En cas de problème, corriger le code original en évitant, dans la mesure du possible, d'introduire des tests sur le numéro de version.

Sachant que des projets ont mis plusieurs mois à migrer de Python 2.4 à Python 2.5, il y a peu de chance pour que les projets majeurs migrent complètement à Python3.

Python 2.7 est déjà prévu et améliorera encore la compatibilité entre Python2 et Python3. En attendant, Python 3.0 nous réserve encore quelques surprises (comme les arguments sous forme de mot clé uniquement, oups, ce n'est plus une surprise) !

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

dix???

Posté par case42 (page perso, ) le 02/10/2008 à 10:32. (lien). Évalué à 9.

Le nouveau préfixe octal est « 0o ». Exemples : deux = 0b10 et dix=0o10

heu... c'est pas plutôt huit=0o10 , ou j'ai rien compris?

GIL

Posté par jideel () le 02/10/2008 à 11:19. (lien). Évalué à 2.

Vu sur http://docs.python.org/dev/library/multiprocessing.html :

multiprocessing is a package that supports spawning processes using an API similar to the threading module. The multiprocessing package offers both local and remote concurrency, effectively side-stepping the Global Interpreter Lock by using subprocesses instead of threads. Due to this, the multiprocessing module allows the programmer to fully leverage multiple processors on a given machine. It runs on both Unix and Windows.

2to3 … nostalgie … ou pas

Posté par Frédéric Heulin () le 02/10/2008 à 11:45. (lien). Évalué à 3.

From two to two to two two [http://www.paroles.net/chanson/15269.1] ... salut Boby :)

Je devrais aller prendre l'air moi je crois …

PS: Sinon pitié ramenez pas les 2be3 sous prétexte que ça ressemble plus hein.

docs HS

Posté par Greg (page perso, ) le 02/10/2008 à 14:41. (lien). Évalué à 2.

Ce qui explique que la doc de python était innaccessible depuis ce matin ! Et là, elle vient de changer, c'est tout nouveau tout beau, juste un peu lent :o)

Content de retrouver la doc, je commençais à ramer :)

python 3.0

Posté par ribwund () le 03/10/2008 à 13:12. (lien). Évalué à 2.

J'étais encore mitigé sur python 3.0, mais après avoir testé les bytes/string/unicode pour voir si c'était possible de porter mercurial, je suis relativement déçu.

En effet c'est un énorme merdier la gestion des noms de fichiers. Étant donné que sous linux c'est fondamentalement des bytes, pourtant la plupart des fonctions os renvoient des strings (donc unicode). En fait actuellement c'est encore plus le bordel vu que ça peut renvoyer un mélange de bytes et de str. Par contre sous windows c'est de l'unicode derriere.

Franchement je vois pas quelle solution peut marcher, pour mercurial on a besoin d'avoir des listes de fichiers de façon indépendante de l'OS et du charset, c'est pas trop possible...

Voir http://bugs.python.org/issue3187 pour le bugreport.

Revenir en haut de page