[python] Da se zjistit, v jakem kodovani ma skript vypisovat text?

Petr Prikryl Prikryl na skil.cz
Úterý Červenec 22 14:52:19 CEST 2003


Zdravím všechny,

Dá se nějak zjistit, zda je standardní
výstup přesměrován do DOSového okna, nebo
do okna s Windowsovým kódováním?

Souvislosti: Momentálně používám skript, 
který vypisuje do dosového okna české texty.

Konkrétně: Pro vypisování řetězců používám
funkci:

def display(s):
    """Zobrazí zadaný řetězec na displeji, provede překódování."""
    sys.stderr.write(unicode(s, 'cp1250').encode('cp852'))

V zápisu funkce vystupují dvě kódování:
- cp1250 -- kódování, ve kterém je napsán 
  zdrojový text. (Teď mě napadá se zeptat --
  můžu zjistit kódování zdrojového textu,
  když jsem na začátku souboru předepsal...?
  # -*- coding: cp1250 -*-
- cp852 -- kódování v DOSovém okně.

Dala by se funkce display nějak zobecnit, aby
skript sám poznal, že vypisuje do DOSového okna, 
případně, že vypisuje do jiného okna?

Díky,
  Petr

-- 
Petr Prikryl (prikrylp at skil dot cz) 



Další informace o konferenci Python