2017-04-22 2 views
0

U0001F60A과 같은 그림 이모티콘의 유니 코드 문자열 데이터베이스가 있습니다. 데이터베이스에서 가져와 실제 사용 가능한 유니 코드 문자열로 변환하려고합니다. (그래서 그들은 이모티콘으로 보이고 많은 문자가 아닙니다.) 표준 양식은 u'\U0001F60A' 인 것 같습니다. 그러나 나는이 양식을 얻을 수 없습니다.유니 코드 문자열을 파이썬에서 사용할 수있는 유니 코드로 변환

if sentiment < 0: 
    emoji = cursor.execute("SELECT emojiuni FROM emojineg WHERE id='{}';".format(num)) # Get negative emoji from DB. 
    emoji = cursor.fetchone() 
    emoji = emoji[0] 

emoji = U0001F60A 만들지 만 u'가 보호 명령 것으로 보인다 때문에 내가

`"u'\" + emoji + "'"` 
u' + "\" + emoji + "'" 
u'\emoji 

이 작동하지 마십시오처럼 u'\ 노력하고 변화에 추가 할 수 없습니다. encode() 명령의 줄에 따라 문자열을 유니 코드 문자로 만드는 방법이 있습니까? (나는 또한 그것을 시도했지만 작동하지 않는 것 같지만 어쩌면 내가 올바르게하지는 않을 것이다.) 어떤 도움을 주시면 감사하겠습니다.

+1

* "나는 내 인생이 양식을 얻을 수 없다"* - 적은하시기 바랍니다. –

답변

3

2.X :

>>> print unichr(int('U0001F60A'[1:], 16)) 

3.X :

>>> print(chr(int('U0001F60A'[1:], 16))) 

+0

고맙습니다. 완벽하게 작동합니다. –

+0

'UnicodeEncodeError : 'UCS-2'코덱은 '\ U0001f60a'문자를 0으로 인코딩 할 수 없습니다. TMP에서 지원되지 않는 BMP가 아닌 문자 '?? – frederick99

+0

@ frederick99 : 예. Tk는 그렇게 끔찍합니다. –

관련 문제