Форум сайта python.su
Сейчас начну матом ругаться :)
ты print в gui делаешь?????
Трудно вместо cp866, подставить нужную кодировку??????
Под консолько обычно подразумевают виндовую cmd, которая работает с cp866, idle это юникодная консоль. В GUI обычно используют utf-8 или юникод
Офлайн
>> ты print в gui делаешь?????
Пока только через cp866 получилось в консоль вывести cmd и в idle консоль, но в случае без u. Подставить кодировку не трудно, но лучше вместо мата покажи пример с u в списке исходном, а не без него, как это перевести в unicode и в cp1251 :)
Отредактировано (Янв. 28, 2009 19:55:29)
Офлайн
Офлайн
Sergey912Там не должно стоять u, так как это не юникодная строка
но лучше вместо мата покажи пример с u в списке исходном
Офлайн
>> чтоб хоть чуть чуть ознакомится с основами работы со текстом.
Да что ты говоришь? Так u все таки удалить не вышло, значит ее там быть не должно? Блеснул бы своими знаниями и удалил ее или есть проблемы?
>> Откуда эта строка у тебя взялась? Может опишешь более полную картину.
http://code.google.com/p/quodlibet/wiki/Mutagen
проблема только со старыми mp3 куда он все равно ставит u
лучше
m = mutagen.id3.Open ('x.mp3')
print m
{u'WXXX:': WXXX(encoding=0, desc=u'', url=u'russianmp3.qps.ru'), 'TPE1': TPE1(encoding=0, text=[u' \xc5\xe1\xe0\xed\xfc\xea\xee']), 'TDRC': TDRC(encoding=0, text=[u'2003']), 'TALB': TALB(encoding=0, text=[u'\xd2\xe0\xed\xf6\xfb \xf1 \xec\xe0\xf2\xee\xec']), 'TRCK': TRCK(encoding=0, text=[u'6']), 'TPUB': TPUB(encoding=0, text=[u'by Romikay']), u"COMM::'\\x00\\x00\\x00'": COMM(encoding=1, lang='\x00\x00\x00', desc=u'', text=[u'www.rus.6x.to BEST RUSSIAN MUSIC']), 'TIT2': TIT2(encoding=3, text=[u'An example']), 'TCON': TCON(encoding=0, text=[u'Other']), 'TPE2': TPE2(encoding=1, text=[u'\xc5\xe1\xe0\xed\xfc\xea\xee'])}
Отредактировано (Янв. 29, 2009 18:00:09)
Офлайн
Sergey912'u' это литерал, который говорил питону, что внутри юникодный текст, а не символ, содержащийся в тексте. Да, ее там быть не должно, так как внутри. Проблема в самой библиотеке, которая возвращает unicode когда не нужно, правь ее.
Блеснул бы своими знаниями и удалил ее или есть проблемы?
Отредактировано (Янв. 29, 2009 19:05:12)
Офлайн
>> P.S. И постарайся не грубить, а то помогать желание быстро отпадает.
Когда мне тыкают носом в мануал, где это не нужно именно такое желание и появляется. Я в курсе прекрасно для чего нужно u и в середине темы говорил тебе, что не сам ее туда подставляю от нечего делать
Лучше им напишу, чтобы исправили :)
Отредактировано (Янв. 29, 2009 19:10:23)
Офлайн
Sergey912
У вас изначально не верная строка в списке. Если задача сводится просто к:
Sergey912то
Проблема в том, что при выводе z я получаю каракули вместо ‘\xe1\xe0\xed\xfc\xea\xee’, как получить строку = ‘\xe1\xe0\xed\xfc\xea\xee’?
>>> z = [u'\xe1\xe0\xed\xfc\xea\xee']
>>> print z[0].encode("unicode-escape")
\xe1\xe0\xed\xfc\xea\xee
Отредактировано (Янв. 29, 2009 19:49:13)
Офлайн
Daevaorn
Спасибо, а из литералов можно получить текст?
>> А вообще с мутагеном надо очень аккуратно работать.
В каком смысле? Я читал что для старых тегов хороший вариант конвертировать их в новые, но не нашел такого в мутагене, попробую через другую библиотеку конвертировать, если такие есть
Отредактировано (Янв. 29, 2009 20:02:33)
Офлайн
Sergey912Надо поэкспериментировать.
Спасибо, а из литералов можно получить текст?
Sergey912Это больше связано с безпределом тегирования mp3 файлов в наших широтах. Самая вакханалия это с кодировками (доходит до того, что в одном теге символы в разных кодировках встречаются). Вот такую интересную строчку вы вполне могли получить именно из-за этого.
В каком смысле?
Офлайн