python 随机生成emoji表情

538 阅读1分钟

事情的起因是问答有个人问的问题

当时搜了些网上的发现基本都不能用,不知道是版本的问题还是咋的就开始自己研究

问题的产生


image.png

解决


官网文档


因为主要用的语言不是python 所以不知道解决方法好不好,仅供参考 如有更优解,欢迎指正

  查看官网api 发现在 emoji 模块中,EMOJI_DATA 是一个字典,其中包含了大量的表情符号和对应的描述信息。 所以选择通过字典来获取表情 image.png

数据类型


EMOJI_DATA 的数据类型

EMOJI_DATA = {
  '🥇': {
      'en' : ':1st_place_medal:',
      'status' : emoji.STATUS["fully_qualified"],
      'E' : 3,
      'de': ':goldmedaille:',
      'es': ':medalla_de_oro:',
      'fr': ':médaille_d’or:',
      'pt': ':medalha_de_ouro:',
      'it': ':medaglia_d’oro:'
  },
  ...
}

实现前提:


Python 中,使用 emoji 模块来处理表情符号,并且结合 random 模块来随机取表情。 因此首先来安装 emoji 模块 使用以下命令来安装:

pip install emoji

具体实现:


emoji.EMOJI_DATA 中的所有表情符号取出,并将其键(即表情符号本身)转换为列表 emojis_list。然后,使用 random.choice() 函数从列表中随机选择一个表情符号,并打印出选中的表情符号及其描述信息。

import random

import emoji

print(len(emoji.EMOJI_DATA))

# 获取所有表情符号及其描述信息
all_emojis = emoji.EMOJI_DATA
# 将表情符号的键(键即为表情符号本身)转换为列表
emojis_list = list(all_emojis.keys())
# 随机选择一个表情符号
random_emoji = random.choice(emojis_list)

# 打印随机表情符号及其描述信息
print(f"随机表情符号:{random_emoji}")