2017-07-04 3 views
2

Ich habe eine Sammlung von Twits und ich möchte Emojis in ihnen überprüfen, aber es sieht aus wie die Schreibprozedur für die Sammlung konvertiert alle Emojis in String zum Beispiel '' ist ':-)' in Text und '' ist ': D' und so weiter mit allen Emojis. Wenn wir versuchen, Unicode-Codepoints für sie zu überprüfen, erhalten wir gleich b':-)' in der gleichen Zeit entspricht 'b'\xf0\x9f\x98\x8a und Gleichheitsprüfung fehlschlägt. Unter Verwendung von utf-16: ':-)'.encode('utf-16') entspricht b'\xff\xfe:\x00-\x00)\x00' und ''.encode('utf-16') ist b'\xff\xfe=\xd8\n\xde'. Gibt es also eine Möglichkeit, Textdarstellungen wie ":-)" wieder in Emojis umzuwandeln?Konvertiere Strings zu Emoji in Python

+0

Das erste, was ich tun würde, ist es mit Regex zu suchen. – Gabriel

Antwort

2

Verwenden Sie eine dictionary, um Text-Emoticons zurück in Emoji, z. wie folgt:

>>> dict_emo = { ':-)' : b'\xf0\x9f\x98\x8a', 
...    ':)' : b'\xf0\x9f\x98\x8a', 
...    '=)' : b'\xf0\x9f\x98\x8a', # Smile or happy 
...    ':-D' : b'\xf0\x9f\x98\x83', 
...    ':D' : b'\xf0\x9f\x98\x83', 
...    '=D' : b'\xf0\x9f\x98\x83', # Big smile 
...    '>:-(' : b'\xF0\x9F\x98\xA0', 
...    '>:-o' : b'\xF0\x9F\x98\xA0' # Angry face 
...    } 
>>> print(dict_emo[':)'].decode('utf-8')) 

>>> print(dict_emo['>:-('].decode('utf-8')) 

>>> print(dict_emo[':-D'].decode('utf-8')) 

>>> 
>>> 
>>> dict_emot= { ':-)' : b'\xf0\x9f\x98\x8a'.decode('utf-8'), 
...    ':)' : b'\xf0\x9f\x98\x8a'.decode('utf-8'), 
...    '=)' : b'\xf0\x9f\x98\x8a'.decode('utf-8'), # Smile or happy 
...    ':-D' : b'\xf0\x9f\x98\x83'.decode('utf-8'), 
...    ':D' : b'\xf0\x9f\x98\x83'.decode('utf-8'), 
...    '=D' : b'\xf0\x9f\x98\x83'.decode('utf-8'), # Big smile 
...    '>:-(' : b'\xF0\x9F\x98\xA0'.decode('utf-8'), 
...    '>:-o' : b'\xF0\x9F\x98\xA0'.decode('utf-8') # Angry face 
...    } 
>>> print(dict_emot[':)']) 

>>> print(dict_emot['>:-o']) 

>>> print(dict_emot['=D']) 

>>> 

Leider gibt es mindestens zwei Aufgaben verbleibenden:

+0

vielen dank! Es hat sehr geholfen. – UGeorge

Verwandte Themen