Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 6, 2009 18:59:54

kvazar
От:
Зарегистрирован: 2009-01-05
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

Поставил python 3.0
Проблемы с кодировками пропали.
Но вот интересно, как там всё работает кто-нибудь знает точно?
Вот у меня исходник в utf-8.
При выводе текст выводится print() в utf-8. Но если произвести допустим срез строки, то при выводе кодировка уже cp1251.

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

Поправьте меня, кто знает..



Офлайн

#2 Янв. 7, 2009 07:17:12

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Проблема с кодировкой

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

..bw



Офлайн

#3 Янв. 9, 2009 05:03:24

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Проблема с кодировкой

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

Мне, кстати, больше нравится UTF-16. У “восмёрки” один плюс – обратная совместимость с ASCII, но мне кажется, что этот “обратный багаж” только геморрою добавляет. Это как cp866 в винде…



Отредактировано (Янв. 9, 2009 05:05:44)

Офлайн

#4 Янв. 9, 2009 09:32:16

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

ZZZ
Мне, кстати, больше нравится UTF-16
у UTF-16 есть еще один минус. Английские буквы занимают в ней по 2 байта, в отличие от UTF-8, в которой они по одному байту. Поэтому исходники в ней весят в 2 раза больше %)



Офлайн

#5 Янв. 9, 2009 09:54:24

The gray Cardinal
От:
Зарегистрирован: 2007-03-07
Сообщения: 422
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

ZZZ
Мне кажется, что сегодня писать в cp1251, это просто неуважение к людям, которые могут этот код читать.
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251) ;).
ZZZ
для того, чтобы посмотреть код с русскими комментариями, я должен перекодировать его в UTF-8
Это особенность мака?



Офлайн

#6 Янв. 9, 2009 11:25:43

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Проблема с кодировкой

The gray Cardinal
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251) ;).
ладно хоть не koi8-r, которая была когда то популярна в рунете :) Сейчас в инете, все больше стало utf. Плюс cp1251 в меньшем объеме трафика, что более важно для инета.



Офлайн

#7 Янв. 9, 2009 13:35:44

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

The gray Cardinal
Посмотри в исходный код странички, которую сейчас читаешь (charset=windows-1251)
У этого форумного движка и у php в частности - тяжелая наследственность.

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

igor.kaist
Плюс cp1251 в меньшем объеме трафика, что более важно для инета.
Не настолько важно. Сейчас почти любой сервер отдает в gzip



Отредактировано (Янв. 9, 2009 13:36:58)

Офлайн

#8 Янв. 9, 2009 14:38:28

The gray Cardinal
От:
Зарегистрирован: 2007-03-07
Сообщения: 422
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

Да всё понятно, utf-8 лучше :). Просто cp1251 ещё очень долго не будет экзотикой, поэтому писать в ней — вовсе не преступление. Кстати, сайтов в koi-8 тоже полно, и долго ещё будет полно :).

Кто-то сказал, что Юникод изобрели, чтобы убрать проблемы с национальными кодировками. Однако, промахнулись — кодировок стало просто больше, соответственно всеобщий бардак только усилился :lol:.



Офлайн

#9 Янв. 9, 2009 15:11:47

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Проблема с кодировкой

The gray Cardinal
Однако, промахнулись — кодировок стало просто больше, соответственно всеобщий бардак только усилился :lol:.
Да наоборот больше порядка, мира и спокойствия :)
The gray Cardinal
Кстати, сайтов в koi-8 тоже полно, и долго ещё будет полно :).
В основном это “мертвые” сайты, которые создавались в эпоху появления интернета в россии…



Офлайн

#10 Янв. 9, 2009 15:43:33

The gray Cardinal
От:
Зарегистрирован: 2007-03-07
Сообщения: 422
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с кодировкой

igor.kaist
В основном это “мертвые” сайты, которые создавались в эпоху появления интернета в россии…
Вот, например, разложившийся труп: http://www.opennet.ru/ ;).



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version