У меня есть текстовый файл с японскими иероглифами. Я прочитал из него строку и хочу специально преобразовать ее в utf-16. Как я могу сделать это с помощью Python? Мой код выглядит так -
with open("C:\\Users\\badri\\jap.txt", 'rb') as f:
for line in f:
u = line.decode(encoding='utf-16',errors='strict')
Я получаю эту ошибку «LookupError: неизвестная кодировка: utf-16»
Причина в том, что я хочу это в utf-16, потому что слова разделены пробелами, и поэтому не имеет значения, на каком языке находится текстовый файл. Я мог бы использовать пробел в качестве разделителя и подсчитать количество слов в файле .
После разделения я могу легко распечатать их таким образом:
u1 = u'\u0048\u0065\u006c\u006c\u006f'
u2 = u'\u0077\u006f\u0072\u006c\u0064'
u3 = u'\u3053\u3093\u306b\u3061\u306f\u4e16\u754c'
print u1
print u2
print u3
Hello
world
こんにちは世界
u'\u0048\u0065\u006c\u006c\u006f \u0077\u006f\u0072\u006c\u0064 \u3053\u3093\u306b\u3061\u306f\u4e16\u754c'
— это не UTF-16. Это просто Юникод. - person Josh Lee   schedule 17.05.2018jap.txt
имеет кодировку. Может это utf-16, может и нет. Вам нужно знать кодировку, декодировать ее, а затем кодировать в utf-16. - person wim   schedule 17.05.2018