python: unicode no terminal do Windows, codificação usada?

Estou usando o interpretador Python no terminal do Windows 7.
Estou tentando entender meu código e codificações unicod

Eu digito

>>> s='ë'
>>> s
'\x89'
>>> u=u'ë'
>>> u
u'\xeb'

Questão : Por que a codificação é usada na strings diferente daquele usado na string unicodeu?

Continuo e digite:

>>> us=unicode(s)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'ascii' codec can't decode byte 0x89 in position 0: ordinal
not in range(128)
>>> us=unicode(s, 'latin-1')
>>> us
u'\x89'

Questão : Tentei usar olatin-1 codificação de boa sorte para transformar a string em uma string unicode (na verdade, tentei várias outras antes, incluindoutf-8). Como posso descobrir qual codificação o terminal usou para codificar minha string?

Questão : como faço para imprimir o terminalë Comoë ao invés de'\x89' ouu'xeb'? Hmm, eu sou estúpido.print(s) faz o trabalho.

Eu já olhei para essa pergunta relacionada ao SO, mas não há pistas de lá:Defina a codificação do terminal Python no Windows

questionAnswers(8)

yourAnswerToTheQuestion