Imprime uma string unicode para consolar o OK, mas falha quando redireciona para um arquivo. Como consertar?

Eu tenho Python 2.7.1 em uma versão chinês simplificado do Windows XP, e eu tenho um programa como este (windows_prn_utf8.py):

#!/usr/bin/env python
# -*- coding: utf8 -*-

print unicode('\xE7\x94\xB5', 'utf8')

Se eu executá-lo no console do Windows CMD, ele emitirá o caractere chinês correto '电'; no entanto, se eu tentar redirecionar a saída do comando para um arquivo. Eu tenho erro.

D:\Temp>windows_prn_utf8.py > 1.txt
Traceback (most recent call last):
  File "D:\Temp\windows_prn_utf8.py", line 4, in <module>
    print unicode('\xE7\x94\xB5', 'utf8')
UnicodeEncodeError: 'ascii' codec can't encode character u'\u7535' in position 0: ordinal not in range(128)

Eu percebo que há um elo perdido aqui. Deve haver uma maneira de determinar, no caso de 1.txt ser gerado, se o caractere unicode em 1.txt deve ser codificado em utf-8 ou codepage-936 ou outras codificações.

Então como consertar isso? Minha preferência é ter a codificação utf-8 em 1.txt. Obrigado.

questionAnswers(4)

yourAnswerToTheQuestion