пятница, 14 сентября 2012 г.

Python UTF-8

Python UTF-8 используется для записи строк в формате UTF.

Приведем пример простой строки:

byteString = "hello world! (in my default locale)"

А теперь запишем строку Python в формате UTF-8:

unicodeString = u"hello Unicode world!"

Конвертируем битовую строку в формат UTF-8 и обратно:

s = "hello byte string"
u = unicode( s )
backToBytes = u.encode()

В большинстве случаев лучше будет явно указать кодировку строки:

s = "hello normal string"
u = unicode( s, "utf-8" )
backToBytes = u.encode( "utf-8" )

Теперь битовая строка Python будет обработана, как строка в формате UTF-8.

Чтение фалов в формате UTF-8.

Вы можете вручную конвертировать строки, считываемые из файлов, следующим образом:

import codecs
fileObj = codecs.open( "someFile", "r", "utf-8" )
u = fileObj.read() # Возвращает строку в формате UTF-8.

Если текст вашего кода содержит символы в формате UTF-8, то в самом верху вашего Python файла разместите следующую строку:

# -*- coding: utf-8 -*-

Комментариев нет:

Отправить комментарий