def emoji_convert(massage):
split_words = massage.split(" ")
emoji = {
":)": " ",
":(": " ",
":": " ",
":|": " "
}
output = ""
for words in split_words:
output += emoji.get(words)
return output
massage=(input("> "))
print(emoji_convert(massage))
得到这个类型的错误
output += emoji.get(words)
TypeError: can only concatenate str (not "NoneType") to str
发布于 2022-06-23 16:44:35
最快速的解决方法是,当emoji
没有匹配的None
时,将缺省值更改为空字符串:
output += emoji.get(words, '')
...or,在未找到单词时,将其传递给未修改的单词(但用于前导空间):
output += emoji.get(words, ' ' + words)
您还可以考虑将输出生成为一个列表,并在返回该列表之前将该列表转换为字符串,从而更好地反映您之前所做的split()
。
def emoji_convert(message):
split_words = message.split(" ")
emoji = {
":)": "",
":(": "",
":": "",
":|": "",
}
output = []
for word in split_words:
output.append(emoji.get(word), word)
return ' '.join(output)
message = input("> ")
print(emoji_convert(message))
https://stackoverflow.com/questions/72733773
复制相似问题