J'ai essayé de sortir comme '\ U0001f604' au lieu du smiley mais cela ne semble pas fonctionner.
j'ai essayé d'utiliser repr () mais cela me donne ce '\ xf0\x9f\x98\x84'. Actuellement il sort comme le smiley qui n'est pas ce que je voulais. encode ('unicode_escape') me donne un UnicodeDecodeError.
Le smiley a été transmis sous forme de chaîne à une méthode de classe en python. c'est-à-dire "je suis heureux "
Appréciez si quelqu'un peut vous aider.
Désolé pour le grand smiley. Le démarque ne semble pas fonctionner ici.
J'ai trouvé la solution au problème.
J'ai écrit le code suivant:
#convert to unicode
teststring = unicode(teststring, 'utf-8')
#encode it with string escape
teststring = teststring.encode('unicode_escape')
>>> print u'\U0001f604'.encode('unicode-escape')
\U0001f604
Une autre solution consiste à utiliser les noms courts ici et à les imprimer en utilisant la chaîne littérale \N
print('\N{grinning face with smiling eyes}')
Ajoutez simplement
# -*- coding: UTF-8 -*-
dans votre code et vous pourrez imprimer des caractères Unicode
Ce code pourrait vous aider à voir comment vous pouvez simplement imprimer un emoji:
# -*- coding: UTF-8 -*-
import re
# string = 'Anything else that you wish to match, except URLs http://url.org'
string = 'Anything else that you wish to match'
matches = re.search(r'^(((?!http|https).)+)$', string)
if matches:
print(matches.group(1)+ " is a match ???? ")
else:
print('???? Sorry! No matches! Something is not right!')
???? Sorry! No matches! Something is not right!
Anything else that you wish to match is a match ????
Si c'est à des fins de débogage, vous pouvez utiliser% r comme spécificateur de format.
>>> print '%r' % u'\U0001f604'
u'\U0001f604'