Nouveautés de Python 3

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
40
Mois de parution
janvier 2009
Domaines


Résumé

Guido Van Rossum a lancé le projet Python 3, également appelé Python 3.0 ou Python 3000, en mars 2006, en créant une nouvelle branche Subversion. Ce projet vise à améliorer la conception du langage en se permettant des modifications incompatibles avec Python 2.x. Depuis la création de Python en 1991, ça sera la seconde version majeure brisant la compatibilité (la précédente est Python 2.0 qui date de 2000).Python 2.6 et Python 3 ont été développés en même temps pour limiter les différences entre ces deux versions. Python 3.0 bénéficie donc de l'ensemble des améliorations de Python 2.6.


1. Introduction douloureuse à Unicode

Le plus gros changement de Python 3 est la séparation stricte entre les chaînes d'octets et les chaînes de caractères. Les deux types str (octets) et unicode (caractères) de Python 2.x sont très proches et convertis implicitement dans les deux sens. Bien que ceci fonctionne dans la majorité des cas, parfois la conversion échoue et le château de cartes s'effondre :

>>> def ajouteSalut(prenom):

...    texte = "Salut %s\n" % prenom

...    f = open('test.txt', 'a')

...    f.write(texte)

...    f.close()

...

>>> ajouteSalut("Victor")

>>> ajouteSalut("Stéphane")

>>> ajouteSalut(u"Amélie")

Traceback (most recent call last):

...

    f.write(texte)

UnicodeEncodeError: 'ascii' codec can't encode characters

in position 8-9: ordinal not in range(128)

La fonction ajouteSalut() est-elle sexiste ? Elle refuse...

Cet article est réservé aux abonnés. Il vous reste 90% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Godot : comment créer un jeu d’aventure

Magazine
Marque
GNU/Linux Magazine
Numéro
247
Mois de parution
avril 2021
Domaines
Résumé

Dans cette série dont cet article est le premier, nous allons découvrir comment créer un jeu aussi complexe qu’un jeu d’aventure avec le moteur de jeu Godot. Nous verrons les différentes étapes, les obstacles et les différents outils mis à votre disposition.

C’est l’histoire d’un make…

Magazine
Marque
GNU/Linux Magazine
Numéro
247
Mois de parution
avril 2021
Domaines
Résumé

L’outil make permet de fabriquer des fichiers selon des règles de production décrites dans une syntaxe très simple. Dans cet article, nous allons explorer les grands principes de l’écriture de ces règles et pour ceux qui ne sont pas encore familiers de cet outil, vous faire regretter d’avoir attendu si longtemps pour le connaître…

Un alter ego d’Eliza en Java faisant du calcul symbolique

Magazine
Marque
GNU/Linux Magazine
Numéro
247
Mois de parution
avril 2021
Domaines
Résumé

ELIZA a été l’un des premiers programmes (chatbot) à avoir tenté de communiquer en langage naturel. Cet article est une tentative de démystification du comportement du programme. L’interprétation d’ELIZA présentée ici est une implémentation en français qui intègre la possibilité d’effectuer des calculs de dérivées en calcul symbolique.

Les barrages se tordent (de rire) : comparaison d'images (mal) géoréférencées avec l'interférométrie par RADAR spatioporté

Magazine
Marque
GNU/Linux Magazine
Numéro
247
Mois de parution
avril 2021
Domaines
Résumé

Nombre d’images diffusées sur le Web sont manipulées, en particulier pour être projetées dans un référentiel géographique. Des projections automatiques mal contrôlées peuvent aboutir à un résultat aberrant... repris dans un documentaire diffusé par France 24 et donnant lieu à polémique sur les risques de rupture du plus gros barrage hydroélectrique du monde. Un peu de bon sens et de contrôle de l’information auraient pu éviter la bévue.