Utilisation des caractères non ASCII

Pour pouvoir utiliser des caractères non ASCII, Python requiert un codage et un décodage explicite des chaînes en Unicode. Dans IBM® SPSS Modeler, les scripts Python sont supposés être codés en UTF-8, ce qui est un codage Unicode standard prenant en charge les caractères non ASCII. Le script suivant peut être compilé car le compilateur Python a été configuré en UTF-8 par SPSS Modeler.

Exemple de script montrant des caractères japonais. Le noeud qui est créé possède un libellé incorrect.

Le noeud résultant aura un libellé incorrect.

Figure 1. Libellé de noeud contenant des caractères non ASCII affiché incorrectement
Node label containing non-ASCII characters, displayed incorrectly

Le libellé est incorrect car le littéral chaîne a lui-même été converti en une chaîne ASCII par Python.

Python permet de spécifier des littéraux chaîne Unicode en ajoutant un préfixe u devant le littéral chaîne :

Exemple de script montrant des caractères japonais. Le noeud qui est créé possède un libellé correct.

Une chaîne Unicode est créée et le libellé s'affiche correctement.

Figure 2. Libellé de noeud contenant des caractères non ASCII affiché correctement
Node label containing non-ASCII characters, displayed correctly

L'utilisation de Python et de l'Unicode est un vaste sujet qui dépasse la portée du présent document. De nombreux ouvrages et de nombreuses ressources en lignes traitant en détail de ce sujet sont à votre disposition.