[Python] unicode w IDLE Python brak polskich znaków

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

[Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Witam,
Mam problem z polskimi znakami:

Kod: Zaznacz cały

>>> errmsg = u"Nie można otworzyć pliku"
>>> print errmsg
Nie można otworzyć pliku
>>> errmsg = "Nie można otworzyć pliku"
>>> print errmsg
Nie można otworzyć pliku
Unikod powinien wyświetlić jednak polskie znaki prawda? Ubuntu 12.10, python v 2.7.3

dzięki i pozdrawiam
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: ethanak »

nie, nie powinien. do tego masz metodę encode.
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Robię to samo w terminalu i wszystkie polskie znaki są. To jest przykład z książki "Zanurkuj w Pythonie". Jest napisane że:
"Wypisując dowolny unikod, Python go zakoduje w taki sposób, aby był zgodny
z kodowaniem znaków wyjścia, a więc dany napis zostanie zawsze wypisany z
polskimi znakami."

edit: To jest wina samego IDLE, takie odnoszę wrażenie.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: ethanak »

Bzdura.
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Ale co bzdura? Właśnie sprawdzałem jeszcze inne ide pythona dreampie i wszystkie polskie znaki są.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: ethanak »

Nigdzie w pythonie nie ma, że jak wywalasz unicode na wyjście to automagicznie przekształci to na utf-8 (czy co tam masz).
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Dobra, tylko dlaczego TYLKO i wyłącznie w IDLE mam taki problem? Próbowałem w ustawieniach zmieniać kodowanie z marnym skutkiem.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: ethanak »

A w Cythonie nie masz? Ciekawe...
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Czy ja pisałem o innych interpretacjach pythona? Nie. Chodzi tylko po powłokę.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: ethanak »

Oj przepraszam.
Ogólnie naucz się że Python wewnętrznie wspaniale działa na unicode, ale operacje IO na unicode leżą i kwiczą. Zawsze konwertuj na string (we właściwym kodowaniu) - wtedy nie będziesz mieć problemów.
Awatar użytkownika
bialcus
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 163
Rejestracja: 02 gru 2011, 16:58
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [Python] unicode w IDLE Python brak polskich znaków

Post autor: bialcus »

Dzięki bardzo ethanak, jako jedyny mi w jakiś sposób pomogłeś. Nawet polskie forum pythona prawie nic się nie odezwało.

pozdrawiam
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 6 gości