|
|
Ce message vous indique que le script contient des caractères typographiques encodés suivant une norme ancienne (vraisemblablement la norme ISO-8859-1 ou Latin-1).
Nous détaillerons les différentes normes d’encodage plus loin dans ce livre. Pour l’instant, il vous suffit de savoir que vous devez dans ce cas :
- soit reconfigurer votre éditeur de textes pour qu’il encode les caractères en Utf-8 (ou vous procurer un autre éditeur fonctionnant suivant cette norme). C’est la meilleure solution, car ainsi vous serez certain à l’avenir de travailler en accord avec les conventions de standardisation actuelles, qui finiront tôt ou tard par remplacer partout les anciennes.
- soit inclure le pseudo-commentaire suivant au début de tous vos scripts (obligatoirement à la 1e ou à la 2e ligne) :
# -*- coding:Latin-1 -*-
Le pseudo-commentaire ci-dessus indique à Python que vous utilisez dans votre script le jeu de caractères accentués ASCII étendu correspondant aux principales langues de l’Europe occidentale (Français, Allemand, Portugais, etc.), encodé sur un seul octet suivant la norme ISO-8859-1, laquelle est souvent désignée aussi par l’étiquette Latin-1.
Python peut traiter correctement les caractères encodés suivant toute une série de normes, mais il faut alors lui signaler laquelle vous utilisez à l’aide d’un pseudo-commentaire en début de script. Sans cette indication, Python considère que vos scripts ont été encodés en Utf-8[1] ], suivant en cela la nouvelle norme Unicode, laquelle a été mise au point pour standardiser la représentation numérique de tous les caractères spécifiques des différentes langues mondiales, ainsi que les symboles mathématiques, scientifiques, etc. Il existe plusieurs représentations ou encodages de cette norme, et nous devrons approfondir cette question plus loin[2], mais pour l’instant il vous suffit de savoir que l’encodage le plus répandu sur les ordinateurs récents est Utf-8. Dans ce système, les caractères standard (ASCII) sont encore encodés sur un seul octet, ce qui assure une certaine compatibilité avec l’ancienne norme d’encodage Latin-1, mais les autres caractères (parmi lesquels nos caractères accentués) peuvent être encodés sur 2, 3, ou même parfois 4 octets.
Nous apprendrons comment gérer et convertir ces différents encodages, lorsque nous étudierons plus en détail le traitement des fichiers texte (au chapitre 9).
4.5 Écrivez un programme qui calcule le volume d’un parallélépipède rectangle dont sont fournis au départ la largeur, la hauteur et la profondeur.