• # Autres sur Python 3000

    Posté par (site web personnel) . En réponse au journal Sortie de Python 3 alpha. Évalué à 4.

    J'ai écrit un billet dans mon blog au sujet de Python 3000 :
    * Types bytes et str
    * Annotation des fonctions
    * Argument sous forme de mot-clé
    http://www.haypocalc.com/blog/index.php/2007/07/30/63-change(...)

    Y'a un autre gros changemetn que j'ai appris au passage : PEP 3119 qui introduit les classes abstraites qui sont similaires aux interfaces Java.
    http://www.python.org/dev/peps/pep-3119/

    Autre billet présentant les développements d'il y un mois :
    http://www.haypocalc.com/blog/index.php/2007/08/14/67-etat-d(...)

    --

    En ce qui concerne le code existant, un outil de conversion appelé « 2to3 » est disponible et fait 95% du boulot. Guido van Rossum conseille de ne pas toucher son code Python 2.x et de n'utiliser que l'outil de conversion. Python 3000 ne sera pas disponible avant 2008 (été 2008 ?).

    Je vous conseille quand même de commencer à :
    - utiliser a//b plutôt que a/b pour la division entière (car 2/1 donne 2.0 et non pas 2 dans Python 3000)
    - éviter de mélanger chaîne de caractère ('unicode') et chaînes d'octets ('str') car de toute façon c'est source de nombreux bugs. Il vaut mieux rester en Unicode le plus longtemps possible.

    Python 3000 vise à limiter les erreurs liées au langage. Exemple : 0666 est une erreur, il faut écrire explicitement 0o666 (forme octale). Ceci évite les erreurs quand l'utilisateur saisi un zéro en trop. Le mélange entre caractère et octet était aussi source de bug. Enfin, la fusion de int et long simplifient le code. Bref, Python 3000 c'est que du bon.

    Haypo