当前位置: 首页 > news >正文

python 随机生成emoji表情

问答板块觉得比较有意思的问题

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

python随机生成emoji

  • 问题的产生
  • 解决
    • 官网文档
      • 数据类型
      • 实现思路
      • 实现前提:
      • 具体实现:
    • 其他常见用法
      • 插入 Emoji 表情:
      • 解析 Emoji 表情:
      • 查找和统计 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 randomimport emojiprint(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 emojitext = "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 emojitext = "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 问题的产生解决官网文档数据类型实现思路实现前提:具体实现: 其他常见用法插入 Emoji 表情:解析…...

python关闭指定进程以excel为例

先说下环境: Excel版本: Python2.7.13和Python3.10.4并存。 2、打开两个excel工作簿 看进程是这样的: 3、用python编程kill进程 # -*- coding: utf-8 -*- import os proc_nameEXCEL.EXE if __name__ __main__:os.system(taskkill /im {} /…...

前后端中的异步和事件机制 | 前后端开发

前言 在前后端程序设计开发工作中,小伙伴们一定都接触过事件、异步这些概念。出现这些概念的原因之一是,我们的代码在执行过程中所涉及的逻辑在不同的场合下执行时间的期望是各不相同的。为了尽量做到充分利用CPU等资源做尽可能多的事,免不了…...

设计模式篇(Java):装饰者模式

👨‍💻本文专栏:设计模式篇-装饰者模式 👨‍💻本文简述:装饰者模式的详解以及jdk中的应用 👨‍💻上一篇文章: 设计模式篇(Java):桥接模式 👨‍&am…...

Spark【RDD编程(三)键值对RDD】

简介 键值对 RDD 就是每个RDD的元素都是 (key,value)类型的键值对,是一种常见的 RDD,可以应用于很多场景。 因为毕竟通过我们之前Hadoop的学习中,我们就可以看到对数据的处理,基本都是以…...

从板凳围观到玩转行家:Moonbeam投票委托如何让普通用户一同参与

今年5月,Moonbeam发起了一项社区链上治理中投票委托反馈的调查。187位社区成员参与了这项调查,调查发现受访者对治理感兴趣,增加参与度只需要进行一些调整,即更简化的投票流程。 治理和去中心化是Web3的核心,随着Moon…...

SpringMVC的文件上传文件下载多文件上传---详细介绍

目录 前言: 一,文件上传 1.1 添加依赖 1.2 配置文件上传解析器 1.3 表单设置 1.4 文件上传的实现 二,文件下载 controller层 前端jsp 三,多文件上传 Controller层 运行 前言: Spring MVC 是一个基于 Java …...

Spark【RDD编程(四)综合案例】

案例1-TOP N个数据的值 输入数据: 1,1768,50,155 2,1218,600,211 3,2239,788,242 4,3101,28,599 5,4899,290,129 6,3110,54,1201 7,4436,259,877 8,2369,7890,27 处理代码: def main(args: Array[String]): Unit {//创建SparkContext对象val conf…...

Golang报错mixture of field:value and value initializers

Golang报错mixture of field:value and value initializers 这个错误跟编程习惯(模式)有关,都知道golang 语言的编程与java /python 以及其他的编程语言相似 ,一通百通,易学万卷书。 编程中同一个结构中要保持唯一模…...

【网络教程】记一次使用Docker手动搭建BT宝塔面板的全过程(包含问题解决如:宝塔面板无法开启防火墙,ssh,nginx等)

文章目录 准备安装安装宝塔面板开启ssh和修改ssh的密码导出镜像问题解决宝塔面板无法开启防火墙无法启动ssh设置密码nginx安装失败设置开机启动相关服务准备 演示的系统环境:Ubuntu 22.04.3 LTS更新安装/升级docker到最新版本升级docker相关命令如下# 更新软件包列表并自动升级…...

【大虾送书第九期】速学Linux:系统应用从入门到精通

目录 🍭写在前面 🍭为什么学习Linux系统 🍭Linux系统的应用领域 🍬1.Linux在服务器的应用 🍬2.嵌入式Linux的应用 🍬3.桌面Linux的应用 🍭Linux的版本选择 &a…...

docker相关命令

####### 帮助启动类命令 ########## 启动docker systemctl start docker 停止docker systemctl stop docker 重启docker systemctl restart docker 查看docker状态 systemctl status docker 开机启动 systemctl enable docker 查看docker概要信息 docker info 查看…...

【Redis】4、rsync远程同步

与inodify结合使用,实现实时同步 rsync简介 rsync(Remote Sync,远程同步)是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,;支持增量备份,并保持链接和权限&#…...

无服务架构--Serverless

无服务架构 无服务架构(Serverless Architecture)即无服务器架构,也被称为函数即服务(Function as a Service,FaaS),是一种云计算模型,用于构建和部署应用程序,无需关心…...

2023-09-07 LeetCode每日一题(修车的最少时间)

2023-09-07每日一题 一、题目编号 2594. 修车的最少时间二、题目链接 点击跳转到题目位置 三、题目描述 给你一个整数数组 ranks ,表示一些机械工的 能力值 。ranksi 是第 i 位机械工的能力值。能力值为 r 的机械工可以在 r * n2 分钟内修好 n 辆车。 同时给你…...

数据挖掘实验-主成分分析与类特征化

数据集&代码https://www.aliyundrive.com/s/ibeJivEcqhm 一.主成分分析 1.实验目的 了解主成分分析的目的,内容以及流程。 掌握主成分分析,能够进行编程实现。 2.实验原理 主成分分析的目的 主成分分析就是把原有的多个指标转化成少数几个代表…...

70. 爬楼梯 (进阶),322. 零钱兑换,279.完全平方数

代码随想录训练营第45天|70. 爬楼梯 (进阶,322. 零钱兑换,279.完全平方数 70.爬楼梯文章思路代码 322.零钱兑换文章思路代码 279.完全平方数文章思路代码 总结 70.爬楼梯 文章 代码随想录|0070.爬楼梯完全背包版本 思路 将楼梯长度视为背…...

Apache Doris 2.0 如何实现导入性能提升 2-8 倍

数据导入吞吐是 OLAP 系统性能的重要衡量标准之一,高效的数据导入能力能够加速数据实时处理和分析的效率。随着 Apache Doris 用户规模的不断扩大, 越来越多用户对数据导入提出更高的要求,这也为 Apache Doris 的数据导入能力带来了更大的挑战…...

RabbitMQ: topic 结构

生产者 package com.qf.mq2302.topic;import com.qf.mq2302.utils.MQUtils; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection;public class Pubisher {public static final String EXCHANGE_NAME"mypubilisher";public static void ma…...

信息系统项目管理教程(第4版):第二章 信息技术及其发展

请点击↑关注、收藏,本博客免费为你获取精彩知识分享!有惊喜哟!! 第二章 信息技术及其发展 2.1信息技术及其发展 信息技术是以微电子学为基础的计算机技术和电信技术的结合而形成的,对声音的、图像的、文字的、数字…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...

web vue 项目 Docker化部署

Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage)&#xff1a…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...

Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换

目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!

本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...

k8s从入门到放弃之HPA控制器

k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率(或其他自定义指标)来调整这些对象的规模,从而帮助应用程序在负…...