Как мне перевести юникод (ы, "utf-8") для работы в Python 2 и Python 3? - PullRequest
0 голосов
/ 27 ноября 2018

Как мне перевести Юникод (ы, "utf-8") для работы в Python 2 и Python 3?

Юникод () был удаленв Python 3, потому что все str являются Unicode, но str () не принимает второй параметр, как unicode () , поэтому не является допустимой заменой.

Я пытался:

>>> for s in ("Luesai", u"Lüsai"):
...     print(s)
...     a = unicode(s, "utf-8")
...     print(a)
...     b = unicode(s).encode("utf-8")
...     print(b)
...     print(a == b)
...
Luesai
Luesai
Luesai
True
Lüsai
TypeError: decoding Unicode is not supported

1 Ответ

0 голосов
/ 27 ноября 2018

Если у вас есть строка байтов, способ перевести ее как в 2, так и в 3 - использовать decode:

a = s.decode("utf-8")
...