2010-01-08 3 views
-4

Что такое правильный способ использования str.decode и unicode.encode?Каков правильный способ использования str.decode и unicode.encode?

Например.

print str.decode 
print unicode.encode 
+2

-1: Должно быть размещено на "happyomyhomeworkforme.com" –

+1

Кто может дать вам код? Вам нужен код или имена людей, которые его напишут? – MAK

ответ

1

пример Игнасио является правильным, но зависит от вашей консоли возможность отображать символы Unicode, которые на Windows, как правило, не может. Вот то же самое, что и в случае безопасных строк (repes):

>>> '\xe3\x81\x82'.decode('utf-8') # three top-bit-set bytes, representing one character 
u'\u3042'        # Hiragana letter A 

>>> u'\u3042'.encode('shift-jis') 
'\x82\xa0'       # only requires two bytes in the Shift-JIS encoding 

>>> unicode('\x82\xa0', 'shift-jis') # alternative way of doing a decode 
u'\u3042' 

, когда вы пишете, например. файл или через веб-сервер, или вы находитесь в другой операционной системе, где консоль поддерживает UTF-8, это немного проще.

0
print 'あ'.decode('utf-8') 
print repr(u'あ'.encode('shift-jis')) 
+0

Файл «D: \ zjm_code \ a.py», строка 4 Синтаксис: не-ASCII-символ '\ xe3' в файле D: \ zjm_code \ a.py в строке 4, но не объявлено кодирование; см. http://www.python.org/peps/pep-0263.html для получения более подробной информации. – zjm1126

+1

Прочтите этот URL и исправьте источник. –

+0

@ zjm1126: вставить как первую строку: '# кодирование: utf-8' –

0
>>> unicode.encode(u"abcd","utf8") 
'abcd' #unicode string u"abcd" got encoded to UTF-8 encoded string "abcd" 

>>> str.decode("abcd","utf8") 
u'abcd' #UTF-8 string "abcd" got decoded to python's unicode object u"abcd" 
>>> 
+0

Нет причин для вызова этих в классе, когда они могут так же (если не больше) легко вызывать на пример. –

+0

Да, правильно, я просто хочу показать пример OP как есть. – YOU

Смежные вопросы