如何使用Python将文本转换为表情符号

175 阅读5分钟

如何使用Python将文本转换为表情符号

表情符号在社交媒体上经常被用来传达表情和情绪。大多数程序员可能都考虑过编写能够生成表情符号的Python代码。那么,这就是要读的文章。

在本教程中,程序员将学习如何在Python中使用字典从文本中建立一个表情符号转换器。

内容表

  • 先决条件
  • 变量
  • 字符串和格式化的字符串
  • IF和ELSE语句
  • 输入和打印函数
  • 字典
  • 文本到表情符号转换器
  • 总结

前提条件

下载最新版本的[Python]并安装它。

另外,下载一个Python代码编辑器,最好是[PyCharm],这是一个为专业开发者提供的集成开发环境,它也面向学生,很友好,很容易使用。

变量

变量是标志着数据可以存储在计算机内存中的标签,它们包含数值。它们存储的是字符串、整数和布尔值等值。变量应始终使用小写字母,最好是这样。

字符串和格式化字符串

字符串是一连串的字符。程序员通过使用双("")和单('')撇号来定义字符串。格式化的字符串在人们可能想用变量生成一些文本的情况下很有帮助。

格式化字符串使用户和读者更容易在他们的头脑和输出中直观地看到字符串的连接。要定义格式化字符串,在代码前加一个 "f",并使用大括号{}在字符串中插入值。

见下面的例子。

first_name='john'
last_name='smith'
message=f"{first_name} {last_name} is a coder"
print(message)

见下面的终端输出。

john smith is a coder

IF和ELSE语句

IF和ELSE语句允许程序员建立可以根据某些条件(TRUE或FALSE)来决定的程序。它们测试一个条件,然后根据结果返回一个值,即条件是通过还是失败。

is_hot=False
is_cold=False

if is_hot:
   print("its a hot day")
   print("please drink plenty of water")
elif is_cold:
   print("its a cold day")
   print("please waer something warm")
else:
   print("its a lovely day")
print("have a nice day ahead")

见下面的终端输出。

its a lovely day
have a nice day ahead

输入和打印函数

print 和 input 是内置在 Python 中的通用函数。程序员使用 print 函数在屏幕上打印一个指定的信息。

输入函数用于接收来自用户的输入。这个函数可以指示程序暂停并等待用户输入所需信息。

见下面的例子。

name=input("what is your name? ")
favourite_colour=input("what is your favorite colour? ")
print(name + " likes " + favourite_colour)

见下面的终端输出。

what is your name? maji
what is your favorite colour? red
maji likes red

字典

字典在键对中存储数据值。字典是一个对象的列表,可以重新排列而不重复其数据值。

字典中的键和值都写在大括号里。键名指的是字典对象,它以键;值对的形式呈现。

details = { "brand": "Ford",
           "model": "Mustang",
           "year" : 2001}
print(details.get("brand"))
print(details.get("model"))
print(details.get("year"))

见下面的终端输出。

Ford
Mustang
2001

从上面的说明中,我们可以决定使用.get() 方法来获取存储在字典中的值。

.update() 方法将更新来自一个参数的项目。如果该项目不存在,那么它将把该项目添加到字典中。

其他的方法有。

.pop() this method remove the item with the specified key name.

.copy() this method returns a copy of the dictionary.

.clear() this method 清空 dictionary。

使用dictionary.get() 方法尝试更多的技巧。

要确定一个 dictionary 有多少个项目,请使用print(len(details))

文本到表情符号转换器

程序员认为打印emojis需要一个复杂的算法。然而,情况并非如此;编写代码将文本转换为表情符号是很简单的。这是使用字典的另一个优秀应用。

第一步是调用存储在一个字符串中的输入函数。接下来,调用.split(“ ”) 方法。这个方法浏览这个字符串,在任何地方发现空格,就用它把这个字符串分成多个词,并以列表形式返回。

同时,定义一个字典,用于将字符与表情符号属性进行特殊的映射,然后结合这一对的键值,将它们映射到一个特定的表情符号。

在Mac系统中,按键盘上的Ctrl、Command和Space键,就可以调出表情符号框。对于Windows系统,按住Window按钮和句号(.)或分号(;),直到出现表情符号选择器。

最后,使用.get() 方法循环浏览字符串。

见下面的例子。

message = input("> ")
words = message.split( " ")
emojis = {
   ":)" : "😀",
   ":(" : "😞",
   "lol" : "😂",
   "sick":"😨",
   "happy": "😀",
   "mermaid": "🧜‍"
}
outcome = " "
for word in words:
   outcome += emojis.get(word, word) + " "
print(outcome)

见下面的终端输出。

> today is a good day because I woke up happy
 today is a good day because I woke up 😀 

使用def 函数将这段代码转化为可重复使用的函数,可以在其他应用程序中使用。

def  emoji_converter(message):
     words = message.split( " ")
     emojis = {
        ":)" : "😀",
        ":(" : "😞",
        "lol" : "😂",
        "sick":"😨",
        "happy": "😀",
        "mermaid": "🧜‍"
     }
     outcome = " "
     for word in words:
         outcome += emojis.get(word, word) + " "
     return output


Message = input  (“>”)
print(emoji_converter(message))

见下面的终端输出。

> I am sad :(
  I am sad 😞

很简单,对吗?

结论

编写将文本转换为表情符号的代码是比较容易做到的,需要对Python语言的基础知识有充分的了解。程序员应该清楚地了解这个原理以及它是如何工作的。