2016-07-08 5 views
-1

Я стараюсь писать в список текстового файла с русской строкой. (Я понимаю, что с unique1 = np.unique (ДФ [ «search_term»]), это numpy.ndarray)Запись русских символов в текстовый файл с помощью Python

thefile = open('search_term.txt', 'w') 
for item in unique1: 
    thefile.write("%s\n" % item) 

Но в списке эта строка выглядит правильно. Но после написания это выглядит как

предметов berger bg bg045-14 отзывы 
звезд 
воронеж 

Почему это получается?

+0

@Keiwan мой список 'numpy.ndarray', и я не могу использовать это – ldevyataykina

+0

Что такое кодировка данных? –

+0

'utf-8' @PadraicCunningham – ldevyataykina

ответ

0

Try запись в файл, как это:

import codecs 

thefile = codecs.open('search_term.txt', 'w', encoding='utf-8') 
for item in unique1: 
    thefile.write("%s\n" % item) 

Проблема заключается в том, что файл, вероятно, кодируется правильно, следовательно, почему символы будут отображаться неправильно.

+1

'UnicodeDecodeError: 'utf8' кодек не может декодировать байт 0xd7 в позиции 2: недопустимый символ продолжения' – ldevyataykina