Python 在告诉它不要这样做后打印不需要的字母



我想创建一个翻译器,所以我在网上看了一些视频,发现一个视频展示了如何替换句子中的某些字母并将它们转换为其他字母/符号。我试过这样做,它奏效了。但是一旦我开始添加新的其他字母以供它查找。它开始打印本应被替换的信件。

def translate(phrase):
translation = ""
for letter in phrase:
if letter in "ㅏ": #if ㅏ then A
translation = translation + "A" 

if letter in "Б": #if Б then B
translation = translation + "B"
else:
translation = translation + letter
return translation
print(translate(input("Enter a phrase: ")))

我打算添加整个字母表,所以我不能让它打印不需要的"应该被替换的字母"。我已经尽力了。但我根本无法让它工作。有什么想法吗?

您需要像这样组合if语句:

if letter in "ㅏ": #if ㅏ then A
translation = translation + "A" 
elif letter in "Б": #if Б then B
translation = translation + "B"
else:
translation = translation + letter

否则,您将为除Б以外的每个字符点击else分支(其中包括

值得注意的是,letter in "ㅏ"可以更简单地写成letter == "ㅏ". 其他比较也是如此。

最后,您可能还想看看maketrans()translate():https://www.tutorialspoint.com/python3/string_maketrans.htm

最新更新