Найти - Пользователи
Полная версия: Как получить i-ую букву строки в UTF-8?
Начало » Python для новичков » Как получить i-ую букву строки в UTF-8?
1 2 3
Butjok
# -*- coding: utf8 -*-

s = 'фыва'
print s[0] # Печатает ересь
Как быть?
slivlen
# -*- coding: utf8 -*-

s = u'фыва'
print s[0]
Butjok
<type ‘exceptions.UnicodeEncodeError’>: ‘ascii’ codec can't encode character u'\u0444' in position 0: ordinal not in range(128)
Александр Кошелев
# -*- coding: utf8 -*-

s = 'фыва'
print s[0:2]
igor.kaist
>>> a='фыва'
>>> print a[0]
ф
>>>
Какую ересь печатает можешь сказать и куда ты вообще печатаешь?
shiza
# -*- coding: utf8 -*-
s = u'фыва'
print s.encode('cp1251')
shiza
Butjok
<type ‘exceptions.UnicodeEncodeError’>: ‘ascii’ codec can't encode character u'\u0444' in position 0: ordinal not in range(128)
Одни и теже грабли у всех %)
Рекомендую почитать про работу с юникодом. Где-то здесь на форуме это обсуждали.
igor.kaist
shiza
# -*- coding: utf8 -*-
s = u'фыва'
print s.encode('cp1251')
это опять же смотря куда печатать :)
shiza
igor.kaist
это опять же смотря куда печатать
Если печатать в досовскую консоль, то он так не ругается, как у топикстера.
igor.kaist
shiza
Если печатать в досовскую консоль, то он так не ругается, как у топикстера.
Ну тогда уж для досовской консоли
# -*- coding: utf8 -*-
s = u'фыва'
print s[0].encode('cp866')
сколько раз эта тема обсуждалась… может пора FAQ делать ? я тоже помню парился с кодировками, когда только начинал изучать питон
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