尝试在函数中使用脚本中的变量时出错

2024-09-29 23:32:53 发布

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

我有一个功能:

def Hanoi(A):

    pegA=['disc0', 'disc1', 'disc2']

如果我调用函数

Hanoi(pegA)

(我正在使用Autodesk Maya)

我得到这个错误:名称'pegA'没有定义

我觉得你可以在函数中使用脚本中的变量?有人能解释一下我为什么会犯这个错误吗?你知道吗

谢谢


Tags: 函数功能脚本名称定义def错误调用函数
2条回答

pegA是在函数中定义的,但是您将它作为参数传递给函数。基本上,你试图在它被定义之前调用它

使用此代码:

def Hanoi(A):
    pegA=['disc0', 'disc1', 'disc2']

您已经定义了一个函数Hanoi,当函数运行时,将创建一个局部变量pegA。当函数返回时,pegA被销毁,因为它是本地的

然后调用函数时:

Hanoi(pegA)

没有pegA传递到函数中。它将在内部创建,但在外部不存在。你知道吗


您可以在函数外创建pegA,然后传入:

def Hanoi(A):
    print A  # pegA was assigned to A when you called the function

pegA=['disc0', 'disc1', 'disc2']
Hanoi(pegA)

最后,作为旁白,一般惯例是以小写字母开始函数,为类名保留大写字母。你知道吗

相关问题 更多 >

    热门问题