首页 > 解决方案 > 基本翻译器,将元音翻译成ag

问题描述

这个基本的python翻译器代码应该将字母中的每个元音翻译成G,它可以将元音翻译成g,但它只翻译2。如果我要写Ga,它会将它翻译成GG,但如果我输入嘉宝,它只会把它翻译成Gg。我究竟做错了什么?


def translate(phrase):
    translation = ""
    for letter in phrase:
        if letter in phrase == "Aeiou" or "aeiou":
            translation = translation + letter  + 'g'
        else:
          translation = translation + letter

    return translation


print(translate(input("Enter a phrase: ")))

标签: python

解决方案


这是一个常见的错误。这是因为您未能检查第二个字符串的条件"aeiou"。的第二个操作数or不是布尔表达式,而是一个真值字符串。第一个字符串也必须是"AEIOU"

def translate(phrase):
    translation = ""
    for letter in phrase:
        if letter in "AEIOU " or  letter in "aeiou":
            translation = translation + 'g'
        else:
          translation = translation + letter

    return translation

推荐阅读