为什么这不起作用?无论我使用什么IDE,都会失败

时间:2017-10-18 11:22:03

标签: string python-2.7

def anti_vowel(text):
  result = ""
  for i in text: 
    while i not in "aeiouAEIOU":
      result += i
  return result

print anti_vowel("Hello")

此代码删除字符串中的元音 ide只返回一个空字符串或保持运行而不打印任何内容。

2 个答案:

答案 0 :(得分:2)

该行:

while i not in "aeiouAEIOU":
如果i不是元音,

将永远运行,在Hello的情况下会发生。替换为

if i not in "aeiouAEIOU":

答案 1 :(得分:0)

while i not in "aeiouAEIOU":
  result += i

您的循环条件仅取决于i的值,但您的循环体不会更改i。因此,如果完全输入循环,它将永远循环。

你可能想写if i not in "aeiouAEIOU"