u'\u201cHello World\u201d'
Правильное представление Python текста Unicode “Hello World”
.Символы smartquote отображаются с использованием шестнадцатеричного экранирования \uXXXX
, а не дословно, поскольку часто возникают проблемы с записью символов Unicode в терминал, особенно в Windows.(Похоже, что MySQL пытался записать их в терминал, но не смог, что привело к заполнению ?
.)
На терминале, который умеет правильно вводить и выводить символы Юникода, вы можете подтвердитьТо же самое:
Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) [GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> u'\u201cHello World\u201d'==u'“Hello World”'
True
, как и для байтовых строк, \x
последовательности точно такие же, как символы:
>>> '\x61'=='a'
True
Теперь, если у вас есть \u
или\x
последовательности, выходящие из Python и попадающие в экспортируемый файл, тогда вы сделали что-то не так с экспортом.Возможно, вы использовали repr()
где-то по ошибке.