python 随机生成emoji表情的方法实现

 更新时间:2023年09月14日 08:18:46   作者:家有娇妻张兔兔  
本文主要介绍了python 随机生成emoji表情的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

问题的产生

问答板块有人提问,感觉挺有趣的就记录下来

image.png

解决

网上搜的大多是用的emoji库的两个函数:emojize()和demojize()。前者根据代码能够生成 emoji表情,而后者则是将 emoji 表情进行解码。

import emoji
str_emoji="This is emoji :red_heart::red_heart::red_heart:"
print(emoji.emojize(str_emoji))

基本上就是从官网找到指定的符号然后输出表情但是它不满足随机的这个条件。

要不就是需要安装emojilib库,然后调用emoji_list = list(emoji.keys())但是实际操作时 发现报错提示没有list方法,不知道是版本问题还是怎么的,反正就是不成功。遂去官网api研究。

官网文档

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

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:'
  },
  ...
}

其中分别为emoji名称:每个emoji表情符号都有一个唯一的名称

语言类型:LANGUAGES = [‘en’, ‘es’, ‘ja’, ‘ko’, ‘pt’, ‘it’, ‘fr’, ‘de’, ‘fa’, ‘id’, ‘zh’]

表情符号状态值:

STATUS = {
    "component": component,
    "fully_qualified": fully_qualified,
    "minimally_qualified": minimally_qualified,
    "unqualified": unqualified
}

实现思路

查看官网api的时候发现在 emoji 模块中,有这个 EMOJI_DATA 参数。

emoji 库中的 EMOJI_DATA 是一个包含常见 emoji 表情信息的 Python 字典。该字典包含了大量 emoji 表情的名称、别名和对应的 Unicode编码。

emoji 表情都表示为一个键值对,其中键是 emoji 表情的名称或别名,值是一个包含以下信息的字典:

  • unicode_codepoint :Emoji 表情的 Unicode 码点。
  • aliases :Emoji 表情的别名列表(如果有的话)。
  • tags :与 Emoji 表情相关的标签列表,用于描述其含义。
  • description :Emoji 表情的描述。

所以可以选择通过字典来获取表情。

实现前提:

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}")

其他常见用法

插入 Emoji 表情:

使用 emojize 函数可以将文本中的 Emoji 表情别名(如 😄)替换为对应的 Emoji 图标:

import emoji
text = "Hello, :smile:!"
emoji_text = emoji.emojize(text)
print(emoji_text)

输出:Hello, 😄!

解析 Emoji 表情:

使用 demojize 函数可以将文本中的 Emoji 图标转换回 Emoji 表情别名:

import emojitext = "Hello, 😄!"deemoji_text = emoji.demojize(text)print(deemoji_text)

输出:Hello, 😄!

查找和统计 Emoji 表情:

使用 emoji_count 函数可以统计文本中包含的 Emoji 表情数量:

import emoji
text = "I love Python! 😍🐍"
emoji_count = emoji.emoji_count(text)
print("Emoji Count:", emoji_count)

输出:Emoji Count: 2

其他功能:

  • emoji_replace :允许使用自定义函数替换文本中的 Emoji 表情。
  • emoji.EMOJI_DATA : 包含 Emoji 表情的信息,如名称、别名和 Unicode 码点。
  • emoji.emoji_information 包含 Emoji 表情的详细信息。

到此这篇关于python 随机生成emoji表情的方法实现的文章就介绍到这了,更多相关python 随机生成emoji表情内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • 淘宝秒杀python脚本 扫码登录版

    淘宝秒杀python脚本 扫码登录版

    这篇文章主要为大家详细介绍了淘宝秒杀python脚本,扫码登录版,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • python 中open文件路径的选择问题解析

    python 中open文件路径的选择问题解析

    这篇文章主要介绍了python 中open文件路径的选择问题解析,本文给大家分享完美解决方法,需要的朋友可以参考下
    2021-07-07
  • 分享3个简单的Python代码高效运行技巧

    分享3个简单的Python代码高效运行技巧

    这篇文章主要介绍了分享3个简单的Python代码高效运行技巧,下面主要分享三个有效的,方便理解的,执行高效的实用技巧,需要的朋友可以参考一下
    2022-03-03
  • NLTK的安装教程及安装错误解决方案

    NLTK的安装教程及安装错误解决方案

    NLTK是一款用于自然语言处理的Python库,安装过程简单易懂,只需要使用pip安装即可。若安装过程中出现错误,可以通过更新pip、安装必要的依赖项、更换镜像源等方式解决。
    2023-04-04
  • Pycharm 设置自定义背景颜色的图文教程

    Pycharm 设置自定义背景颜色的图文教程

    今天小编就为大家分享一篇Pycharm 设置自定义背景颜色的图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • 使用Python获取公众号下所有的文章

    使用Python获取公众号下所有的文章

    我比较喜欢看公众号,有时遇到一个感兴趣的公众号时,都会感觉相逢恨晚,想一口气看完所有历史文章。本文主要介绍了使用Python获取公众号下所有的文章,感兴趣的可以了解一下
    2021-06-06
  • Python实现以时间换空间的缓存替换算法

    Python实现以时间换空间的缓存替换算法

    缓存是指可以进行高速数据交换的存储器,它先于内存与CPU交换数据,因此速度很快。缓存就是把一些数据暂时存放于某些地方,可能是内存,也有可能硬盘。下面给大家介绍Python实现以时间换空间的缓存替换算法,需要的朋友参考下
    2016-02-02
  • Python工程师面试题 与Python基础语法相关

    Python工程师面试题 与Python基础语法相关

    这篇文章主要为大家分享了Python工程师面试题,面试题的内容主要与Python基础语法相关,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • 在python list中筛选包含字符的字段方式

    在python list中筛选包含字符的字段方式

    这篇文章主要介绍了在python list中筛选包含字符的字段方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • Python数据类型之String字符串实例详解

    Python数据类型之String字符串实例详解

    这篇文章主要介绍了Python数据类型之String字符串,结合实例形式详细讲解了Python字符串的概念、定义、连接、格式化、转换、查找、截取、判断等常见操作技巧,需要的朋友可以参考下
    2019-05-05

最新评论