名称错误:未定义名称“pigLatin”

2024-09-30 18:29:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码是:

def vowelIndex(wd) :

    def getInitialCs(wd) :
        return wd[:vowelIndex(wd)]

    def getTheRest(wd) :
        return wd[vowelIndex(wd):]

    def pigLatin(wd) :
         if len(wd) == 0: return ''
         elif wd[0] in 'aeiou' :
              return wd + 'way'
         else :
              return getTheRest(wd) + getInitialCs(wd) + 'ay'

当我键入PigLatin('yellow')时,发生了以下错误:


    NameError                                 Traceback (most recent call last)
    <ipython-input-128-e025299840a1> in <module>()
    ----> 1 pigLatin('yellow')

NameError: name 'pigLatin' is not defined

我想要这个结果:

pigLatin('yellow')

'ellowyay'

我不知道怎么了,请帮帮我


Tags: 代码inlenreturnifdefelifwd
1条回答
网友
1楼 · 发布于 2024-09-30 18:29:48

您需要正确地定义vowelIndex,而不是将其他函数放在其中(修复缩进)。你知道吗

def vowelIndex(wd):
    return 1          #<  need a proper algorithm

def getInitialCs(wd):
    return wd[:vowelIndex(wd)]


def getTheRest(wd):
    return wd[vowelIndex(wd):]


def pigLatin(wd):
    if len(wd) == 0:
        return ''
    elif wd[0] in 'aeiou':
        return wd + 'way'
    else:
        return getTheRest(wd) + getInitialCs(wd) + 'ay'

print(pigLatin('yellow'))

输出:

ellowyay

相关问题 更多 >