Tovim napsal(a), dne 30.12.2008 11:42:

Zdařbůh.

Zkouším si jak Python 3.0 umí či neumí háčky a čárky na jednoduchém prográmku ( b = „nová šalvěj“ / print (b) ). Tento program mám v souboru faa.py s deklarací (__*__coding:utf=8__*__) a v souboru fab.py bez deklarace. Zařídil jsem si, že interaktivní konzoli mohu otevřít dvojklikem na souboru.py.

Dvojklik na faa.py bez problému otevře konzoli s výstupem ‚nová šajvěj‘. Mohu pokračovat >>> import faa a třeba >>> print(faa.b) à‘nová šalvěj‘.

Když totéž udělám na souboru fab.py (bez deklarace), dostanu SyntaxError: Non-UTF-8 code starting with ‘ \xe1‘ in file C:\Test\fab.py on line 3, but no encoding declared – neboli stížnost, že mám v programu nedeklarované kódování.

Když nedeklarované, tak nedeklarované, jenomže když soubor faa.py otevřu a spustím v IDLE, dostanu zkomolený výstup a mohu si v konfiguraci IDLE nastavit co libo (Locale-defined, utf-8, None), nic platno.

Když v IDLE otevřu a spustím soubor fab.py bez deklarace, dostanu ‘ nová šalvěj ‘ bez nejmenšího uzardění.

Mohl by mi někdo poradit, zda tento rozpor lze odstranit a jak? Děkuji a přeji štěstí, zdraví, dlouhá léta.


zkusil jsem toto:

kůň = "Žluťoučký kůň pěl ďábelské ódy"
print (kůň)

a vytisklo se mi toto: Žluťoučký kůň pěl ďábelské ódy

Chyba bude u Tebe. Jsi si jistý, že ten druhý soubor je uložen v kodovani utf-8? Raději bych na ověření a opětné uložení použil PSPad. Když v IDLE založíš další nový soubor (při nastaveném utf-8), tak ti to dělá taky? A v PSPadu? Není třeba deklarovat utf-8, je třeba však ho mít skutečně použito.

--
geon
Pavel Kosina

_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python

Odpovedet emailem