LINUX.ORG.RU

Перенаправление ввода в шелл джанго и юникод

 ,


0

1

Бывает нужно загнать в шелл django ввод из файла.
python manage.py shell<file работал нормально, пока в файле не встретились юникодные строки с кириллицей.
Скажем, если в шелле набрать print(u'привет!'), будет нормальный вывод, а если та же строка выполняется из перенаправленного файла - привет
В чем может быть проблема?

★★

Ответ на: комментарий от anonymous
$ locale -a
C
en_US
en_US.iso88591
en_US.utf8
POSIX
ru_RU
ru_RU.iso88595
ru_RU.koi8r
ru_RU.utf8
russian
$ echo $LANG
ru_RU.UTF-8
shatsky ★★
() автор топика
Ответ на: комментарий от anonymous

Пример вывода слитой строки с помощью pprint:

u'\xd0\xbf\xd0\xb5\xd0\xb2\xd0\xb8\xd1\x86\xd1\x8b \xd0\xbd\xd0\xb0 "\u0411"'
Почему шестнадцатеричные \x не объединяются в юникодные \u?

shatsky ★★
() автор топика
Ответ на: комментарий от shatsky

Если в файле задать строку \u-последовательностями - она отображается правильно.
А если просто u'текст' - отдельными байтами.

shatsky ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.