我的翻译器没有输出我想要的
My translator does not output what i want it to
我需要我的代码在写入的输入为 'hey :)' 时输出 'hey '。相反,它输出 'h'
def emojiChanger(word):
emoji = " "
for letter in word:
if letter in ":)":
emoji = emoji + ""
elif letter in ":(":
emoji = emoji + "☹️"
else:
emoji = emoji + letter
return emoji
print(emojiChanger(input('How are you doing? ')))
输出:
How are you doing? :)
替代输出:# 我需要修复的内容
How are you doing? hey :)
h
我需要它来输出:嘿
它只能进入 if
或 elif
或 else
分支之一(它永远不会进入 elif
或 :
因为if
已经捕捉到了)。在所有这些情况下,您都需要向输出字符串添加内容,可能在条件之外。
但是,您一次检查一个字母,因此 :
后跟 anything 将添加并且 )
行中的任何其他地方都可以那也是;并且 (
任何地方都会触发 ☹️
一个更好的方法可能是
def emojiChanger(word):
return word.replace(':)', '').replace(':(', '☹️')
您总是输入第一个 if
。使用
def emojiChanger(word):
return "hey " if ":)" in word else None
您还可以在 :(
出现时定义唯一的 return 值
def emojiChanger(word):
return "hey " if ":)" in word else "not hey ☹️" if ":(" in word else None
我需要我的代码在写入的输入为 'hey :)' 时输出 'hey '。相反,它输出 'h'
def emojiChanger(word):
emoji = " "
for letter in word:
if letter in ":)":
emoji = emoji + ""
elif letter in ":(":
emoji = emoji + "☹️"
else:
emoji = emoji + letter
return emoji
print(emojiChanger(input('How are you doing? ')))
输出:
How are you doing? :)
替代输出:# 我需要修复的内容
How are you doing? hey :)
h
我需要它来输出:嘿
它只能进入 if
或 elif
或 else
分支之一(它永远不会进入 elif
或 :
因为if
已经捕捉到了)。在所有这些情况下,您都需要向输出字符串添加内容,可能在条件之外。
但是,您一次检查一个字母,因此 :
后跟 anything 将添加并且 )
行中的任何其他地方都可以那也是;并且 (
任何地方都会触发 ☹️
一个更好的方法可能是
def emojiChanger(word):
return word.replace(':)', '').replace(':(', '☹️')
您总是输入第一个 if
。使用
def emojiChanger(word):
return "hey " if ":)" in word else None
您还可以在 :(
出现时定义唯一的 return 值
def emojiChanger(word):
return "hey " if ":)" in word else "not hey ☹️" if ":(" in word else None