【发布时间】:2021-08-09 10:58:51
【问题描述】:
我正在编写一个 Python 代码,它将使用 dict 将表情符号转换为文本,但我不知道如何从一个句子中的多个值(表情符号)中获取作为文本的键
emoji={
'a':'????️',
'b':'????️',
'c':'????️',
'd':'????️',
'e':'????️',
'f':'????️',
'g':'????️',
'h':'????️',
'i':'????️',
'j':'????️',
'k':'????️',
'l':'????️',
'm':'????️',
'n':'????️',
'o':'????️',
'p':'☺️',
'q':'????️',
'r':'????️',
's':'????️',
't':'????️',
'u':'????️',
'v':'????️',
'w':'????️',
'x':'????️',
'y':'????️',
'z':'????️',
}
output_text=''
input_text=str(input('Input:'))
for letter in input_text:
if letter in emoji.values():
output_text=output_text+emoji.keys(letter)
else:
output_text=output_text+letter
print(output_text)
此代码将遍历句子中的每个字符,然后检查该字符是否是字典中的表情符号,如果是,它将获取表情符号(值)的文本(键)。
编辑#1: 更新代码:
emoji_dict={k:v for v,k in emoji.items()}
print(emoji_dict)
input_text=str(input('Input:'))
output_text=''
for letter in input_text:
if letter in emoji_dict:
print(emoji_dict[letter])
output_text=output_text+emoji_dict[letter]
else:
output_text=output_text+letter
print(output_text)
【问题讨论】:
-
您的 dict 是否实际上与您想要做的完全相反!
-
嗯,实际上我还有一个代码,它使用这个字典将文本翻译成表情符号(我取了一小部分代码,这样更容易阅读)。我知道我可以写另一个字典,但我想了解更多关于 Python 字典的信息,而且我懒得写另一个 :) 感谢您对我的帖子发表评论:D
-
那你得说清楚!
-
请更新您的问题,使其有意义。
-
我不确定您要完成什么,但我的印象是它是一个来回转换表。如果是这种情况,请考虑使用
str.maketrans()和str.translate()。您的代码可能会缩短到两三行。
标签: python python-3.x dictionary