聊天机器人的Python字符常量

聊天机器人的Python字符常量,python,unicode,constants,Python,Unicode,Constants,我目前正在用python编写一个聊天机器人,我希望能够键入特殊字符,如表情符号等。我的第一次尝试只是将文字字符放入代码中 add_reaction('🇦') 不幸的是,没有多少编辑支持这些字符,所以它们看起来大多是随机的胡言乱语。对于可读性来说,这也不是很好 为了解决这个乱七八糟的问题,我使用了chr(charcode:{int}),这也使得它们更容易复制粘贴保存 然后我将所有字符放在一个单独的文件special_chars.py中,这样我就可以给字符起个名字了 thumbs_up =

我目前正在用python编写一个聊天机器人,我希望能够键入特殊字符,如表情符号等。我的第一次尝试只是将文字字符放入代码中

add_reaction('🇦')
不幸的是,没有多少编辑支持这些字符,所以它们看起来大多是随机的胡言乱语。对于可读性来说,这也不是很好

为了解决这个乱七八糟的问题,我使用了
chr(charcode:{int})
,这也使得它们更容易复制粘贴保存

然后我将所有字符放在一个单独的文件
special_chars.py
中,这样我就可以给字符起个名字了

thumbs_up = chr(...)
smiley_face = chr(...)
regional_a_z = [chr(127462+i) for i in range(0,25)]
...
然而,这个文件开始长得很快

那么,有没有更好的方法

要记住的是:

  • 如果无法避免长文件,可以将字符代码移动到非python文件中吗
  • 连续字符或字符组的潜在列表,例如:上下拇指、区域指标列表

标准库的Unicode数据模块已经包含特殊字符的名称:

>>> unicodedata.lookup('THUMBS UP SIGN')
'\U0001f44d'
>>> unicodedata.lookup("REGIONAL INDICATOR SYMBOL LETTER A")
'\U0001f1e6'
您可以通过代码获取字符的正式名称:

>>> unicodedata.name('\U0001F600')
'GRINNING FACE'