Korzystanie ze znaków spoza zestawu ASCII

Korzystanie ze znaków spoza zestawu ASCII w języku Python jest możliwe pod warunkiem zastosowania jawnego kodowania i dekodowania łańcuchów zgodnie ze standardem Unicode. W programie IBM® SPSS Modeler przyjmuje się, że skrypty w języku Python są zakodowane w standardzie Unicode UTF-8, który obsługuje znaki spoza zestawu ASCII. Następujący skrypt zostanie prawidłowo skompilowany, ponieważ SPSS Modeler skonfigurował kompilator Python do pracy z kodowaniem UTF-8.

Przykład skryptu ze znakami japońskimi Utworzony węzeł ma nieprawidłową etykietę.

Jednak wynikowy węzeł będzie miał nieprawidłową etykietę.

Rysunek 1. Etykieta węzła zawierająca znaki spoza zestawu ASCII, wyświetlana nieprawidłowo
Node label containing non-ASCII characters, displayed incorrectly

Etykieta jest nieprawidłowa, ponieważ literał łańcuchowy został przekształcony w łańcuch ASCII przez środowisko Python.

Python dopuszcza podawanie literałów łańcuchowych Unicode, pod warunkiem poprzedzenia takiego literału znakiem u:

Przykład skryptu ze znakami japońskimi Utworzony węzeł ma prawidłową etykietę.

Spowoduje to utworzenie łańcucha Unicode i prawidłowe wyświetlanie etykiety.

Rysunek 2. Etykieta węzła zawierająca znaki spoza zestawu ASCII, wyświetlana prawidłowo
Node label containing non-ASCII characters, displayed correctly

Korzystanie z łańcuchów Unicode w środowisku Python jest obszernym zagadnieniem, które wykracza poza tematykę niniejszej publikacji. Dostępne są liczne książki i materiały elektroniczne, w których temat ten został omówiony bardziej szczegółowo.