Zubchick, не цепляйся. Мне кажется, что лучше сразу давать правильные понятия и определения, чтобы не вводить новичков в заблуждение. А то это как в школе: до какого-то класса говорят, что нельзя из меньшего вычесть большее…
объект unicode работает с текстом в кодировке unicode
Оно, в общем-то правильно, но запутано. Тут не важен тот факт, что он работает “в кодировке unicode”.
Ну да ладно, у меня ощущение, что я начал придираться.
Скажу так: мне не нравятся понятия внешней и внутренней кодировок.
1. ИМХО, куда важнее объяснить разницу между str и unicode;
2. Понятие кодировки вывода (в винде cp866, в никсах обычно utf-8);
3. Почему нельзя использовать cp1251 (кстати, из первого примера вытекает, что если я открою блокнотом файл, напишу в первой строке “# coding: utf-8”, то при сохранении файл будет не в cp1251, так что следующий пункт…);
4. Почему нужно использовать нормальные редакторы, вместо блокнота;
5. repr, это далеко не всегда тоже, что str или .encode.
P.S.
происходит вызов _repr_() который возвращает
Либо “repr”, либо “__repr__”, но никак не “_repr_”.