Найти - Пользователи
Полная версия: Проблема с кодировкой
Начало » Python для новичков » Проблема с кодировкой
1 2 3 4 5 6 7
kvazar
Поставил python 3.0
Проблемы с кодировками пропали.
Но вот интересно, как там всё работает кто-нибудь знает точно?
Вот у меня исходник в utf-8.
При выводе текст выводится print() в utf-8. Но если произвести допустим срез строки, то при выводе кодировка уже cp1251.

Мои выводы.
Если над строкой не производить никаких действий, то она хранится в исходной кодировке, а не unicode…
Если произвести скажем срез, то текст переводится в unicode и уже при выводе текст переводится в кодировку согласно локали.

Поправьте меня, кто знает..
bw
В 3.0 нет строк, насколько я знаю, только UNICODE, естественно нет и проблем.

..bw
ZZZ
The gray Cardinal написал, согласись, что юникод куда лучше старых восмибитных кодировок. Может он и менее удобен, если работать в “блокноте” винды, но это единственный реальный минус.
Вот, например, меня раздражает, что для того, чтобы посмотреть код с русскими комментариями, я должен перекодировать его в UTF-8. Мне кажется, что сегодня писать в cp1251, это просто неуважение к людям, которые могут этот код читать. Как сказал Shiza, нужно вырабатывать хорошие привычки, а от себя добавлю, что нужно ещё и стремиться к лучшему.
ВСЕ нормальные IDE замечательно умеют работать UTF-8 и я просто не понимаю происхождение вопроса.

Мне, кстати, больше нравится UTF-16. У “восмёрки” один плюс – обратная совместимость с ASCII, но мне кажется, что этот “обратный багаж” только геморрою добавляет. Это как cp866 в винде…
shiza
ZZZ
Мне, кстати, больше нравится UTF-16
у UTF-16 есть еще один минус. Английские буквы занимают в ней по 2 байта, в отличие от UTF-8, в которой они по одному байту. Поэтому исходники в ней весят в 2 раза больше %)
The gray Cardinal
ZZZ
Мне кажется, что сегодня писать в cp1251, это просто неуважение к людям, которые могут этот код читать.
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251) ;).
ZZZ
для того, чтобы посмотреть код с русскими комментариями, я должен перекодировать его в UTF-8
Это особенность мака?
igor.kaist
The gray Cardinal
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251) ;).
ладно хоть не koi8-r, которая была когда то популярна в рунете :) Сейчас в инете, все больше стало utf. Плюс cp1251 в меньшем объеме трафика, что более важно для инета.
shiza
The gray Cardinal
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251)
У этого форумного движка и у php в частности - тяжелая наследственность.

Все более-менее новые сайты - utf-8. Всетки 21 век на дворе =)

igor.kaist
Плюс cp1251 в меньшем объеме трафика, что более важно для инета.
Не настолько важно. Сейчас почти любой сервер отдает в gzip
The gray Cardinal
Да всё понятно, utf-8 лучше :). Просто cp1251 ещё очень долго не будет экзотикой, поэтому писать в ней — вовсе не преступление. Кстати, сайтов в koi-8 тоже полно, и долго ещё будет полно :).

Кто-то сказал, что Юникод изобрели, чтобы убрать проблемы с национальными кодировками. Однако, промахнулись — кодировок стало просто больше, соответственно всеобщий бардак только усилился :lol:.
igor.kaist
The gray Cardinal
Однако, промахнулись — кодировок стало просто больше, соответственно всеобщий бардак только усилился :lol:.
Да наоборот больше порядка, мира и спокойствия :)
The gray Cardinal
Кстати, сайтов в koi-8 тоже полно, и долго ещё будет полно :).
В основном это “мертвые” сайты, которые создавались в эпоху появления интернета в россии…
The gray Cardinal
igor.kaist
В основном это “мертвые” сайты, которые создавались в эпоху появления интернета в россии…
Вот, например, разложившийся труп: http://www.opennet.ru/ ;).
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB