[python] TakVámNevím
Filip Štědronský
regnarg na seznam.cz
Úterý Prosinec 30 12:35:21 CET 2008
Dne 30.12.2008 11:42:28 napsal Tovim:
> 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.
>
> Tovim
Dobrý den,
pokud byly soubory vytvořeny v IDLE nebo jiném pythoním editoru,
mohl by problém tkvít právě tam, protože takové editory často
berou samotnou deklaraci coding jako nápovědu, v jakém kódování
soubor uložit. Takže rozdíl mezi deklarací a její nepřítomností
nejspíš není podstatný při spuštění, ale při uložení, protože
bez ní to může editor uložit ve výchozím kódování systému (tedy
ve Vašem nešťastném případě nejspíš windows-1250)...
Změna nastavení editoru (výchozí kódování, příp. nastavení při
ukládání) by to měla vyřešit.
Hodně stěstí,
regnarg
--
regnarg na matfyz.cz • http://regnarg.matfyz.cz • regnarg na jabber.cz
————————————————————————————————————————————————————————————————
Každý člověk je anděl s jedním křídlem a dva se musí pevně držet
spolu, aby mohli létat • Láska a přátelství nikdy nezklamou,
zklame vždy člověk • Jediné, co je krásnější, než dávat štěstí,
je dávat lásku • I když lidé nevědí, co je dobro, mají ho v sobě
Další informace o konferenci Python