我得到 python 函数 NameError

i get python function NameError

当我 运行 此代码时,我得到 NameError

NameError: name 'word' is not defined

def disemvowel(word):
    vowels = ["a", "e", "i", "o", "u"]
    for vowel in vowels:
        if vowel in word:
            word.remove(vowle)
            print(word)

disemvowel(word)

您收到的错误是由于变量 word 未初始化所致。此外,我不认为 .remove() 是字符串上的有效函数。

无论如何,您在这一行中有错字:

word.remove(vowle) // should be 'vowel'

尝试:

def disemvowel(word):
    vowels = ["a", "e", "i", "o", "u"]
    out = word

    for vowel in vowels:
        if vowel in word.lower():
            out = out.replace(vowel, "")

    print(out)

word = "orange"
disemvowel(word)

以上将输出以下内容:

rng

有不止一种方法可以做到这一点,但我确实想出了一种使用 .remove() 来做到这一点的方法......我确实将 word 转换为 list 然后我确实转换回 string 只是为了了解它是如何工作的

word = input("enter the name: ")
new_word = list(word)


def disemvowel(word):

    for vowel in 'aeiou':
        if vowel.lower() in new_word:
            new_word.remove(vowel)

    strword = ''.join(new_word)
    print(strword)


disemvowel(word)