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