random_characters = "adak"
for letter in random_characters:
print(letter)
if letter == "a":
print("Vowel")
作为输出发射:
a
Vowel
d
a
Vowel
k
如果我只在If语句中包含一个字母,那么代码运行良好。然而,如果我通过或语句再添加一个。。。
a
Vowel
d
Vowel
a
Vowel
k
Vowel
"元音"在每次迭代后打印。
我将从字里行间阅读,并猜测您犯了一个非常常见的错误:
if letter == "a" or "e":
因为这会产生你所看到的结果。原因是,这被解释为
if (letter == "a") or "e":
并且由于";e";如果始终为True,则始终取if
。如果要比较多个字母,请使用in
:
if letter in ("a","e","i","o","u"):
尽管在这种情况下,您也可以写:
if letter in "aeiuo":