como imprimir palavra chinesa no meu código .. usando python
Este é o meu código:
print '哈哈'.decode('gb2312').encode('utf-8')
... e imprime:
SyntaxError: Non-ASCII character '\xe5' in file D:\zjm_code\a.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
Como imprimo '哈哈'?
Atualizar: Quando eu uso o seguinte código:
#!/usr/bin/python
# -*- coding: utf-8 -*-
print '哈哈'
... imprime鍝堝搱
. Não era isso que eu queria conseguir.
Meu IDE é Ulipad, isso é um bug do IDE?
Segunda atualização:
Este código imprimirá os caracteres corretamente:
#!/usr/bin/python
# -*- coding: utf-8 -*-
print u'哈哈'.encode('gb2312')
... e quando eu uso isso:
#!/usr/bin/python
# -*- coding: utf-8 -*-
a='哈哈'
print a.encode('gb2312')
Traceback (most recent call last):
File "D:\zjm_code\a.py", line 5, in <module>
print a.encode('gb2312')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
...ou...
#!/usr/bin/python
# -*- coding: utf-8 -*-
a='哈哈'
print unicode(a).encode('gb2312')
Traceback (most recent call last):
File "D:\zjm_code\a.py", line 5, in <module>
print unicode(a).encode('gb2312')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
... não funciona. Como eu imprimiria a variávela
adequadamente?
obrigado