파이썬 유니코드

Scarecrow의 이미지

유니코드 스트링에는 유니코드로 값이 되어 있어야 할 것 같은데...

>>> '가나다'
'\xb0\xa1\xb3\xaa\xb4\xd9'
>>> u'가나다'
u'\uac00\ub098\ub2e4'

mutagen을 가지고 놀다보니...

u'\xb0\xa1\xb3\xaa\xb4\xd9'
같은 식으로 값이 나오는데 이걸 어떻게 해야 바르게 될까요?
Scarecrow의 이미지

u'\xb0\xa1\xb3\xaa\xb4\xd9'가 a라는 변수에 있다고 할때...

>> temp = ''
>> for i in a:
...     temp = temp + chr(ord(i))
...
>>> print temp

로 해결(?)보기는 했는데 뭔가 매끄럽지 않은 느낌이군요.

7339989b62a014c4ce6e31b3540bc7b5f06455024f22753f6235c935e8e5의 이미지

>>> u'\xb0\xa1\xb3\xaa\xb4\xd9'.encode('raw_unicode_escape').decode('cp949')
u'\uac00\ub098\ub2e4'

이렇게 하면 되네요. (저도 덕분에 알았습니다. ㅎㅎ)
http://docs.python.org/library/codecs.html#standard-encodings
Scarecrow의 이미지

뭔가 있을거 같았는데 역시 있었군요.
'unicode-escape'로만 풀어보고 의도한 동작이 아니라며 삽질한 기억이 ;;;;;

DebPolaris의 이미지

덕분에 감사합니다.
--------------------------------------------------------
남이 가르쳐주는 것만 받아들이는 것이 아니라, 스스로 만들고, 고쳐가는 사람을 '해커'라고 부른다.
그리고 자신이 쌓아온 노하우를 거리낌없이 나눌 줄 아는 사람을 '진정한' 해커라고 한다.
-Rob Flickenger 'Linux server hacks'
http://heuno

-----------------------------------------------------
남이 가르쳐주는 것만 받아들이는 것이 아니라, 스스로 만들고, 고쳐가는 사람을 '해커'라고 부른다.
그리고 자신이 쌓아온 노하우를 거리낌없이 나눌 줄 아는 사람을 '진정한' 해커라고 한다.
-Rob Flickenger 'Linux server hacks'

DEBIAN TESTING, KDE...
debpolaris.blogspot.kr