Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 Python2.7:在上一个函数中定义的变量,接收未定义的错误_Python 2.7_Undefined - Fatal编程技术网

Python 2.7 Python2.7:在上一个函数中定义的变量,接收未定义的错误

Python 2.7 Python2.7:在上一个函数中定义的变量,接收未定义的错误,python-2.7,undefined,Python 2.7,Undefined,所以我的变量在inputnfo()中定义得很清楚,为什么会出现未定义的错误?尝试&也许除外?我已添加或删除。。。到处交换,似乎找不到解决方案,网上的答案似乎非常基于情况。。。提前感谢:) 超级新的和改进的编辑:现在获取UnboundLocalError 这是因为函数inputnfo()中的变量“much”是该函数的局部变量。这就是为什么在while循环中会出现未定义的错误。有两种解决办法 1.通过包含行,使变量“多”为全局变量 def inputnfo(): global much

所以我的变量在inputnfo()中定义得很清楚,为什么会出现未定义的错误?尝试&也许除外?我已添加或删除。。。到处交换,似乎找不到解决方案,网上的答案似乎非常基于情况。。。提前感谢:)

超级新的和改进的编辑:现在获取UnboundLocalError 这是因为函数inputnfo()中的变量“much”是该函数的局部变量。这就是为什么在while循环中会出现未定义的错误。有两种解决办法 1.通过包含行,使变量“多”为全局变量

def inputnfo():
    global much
    try: 
然后删除generate函数的参数

或 2.让函数inputnfo()返回很多,并在while循环中使用该返回值并生成函数

对变量“which”执行相同的操作 在前面加一行“”

which = ""
def inputnfo():
    global much

发布完整的回溯。我意识到了全局性,并将其应用到了很多可以正常工作的地方,但是为什么我要在我的函数外将其声明为空字符串,并使用全局?@OsirisHex它挂起,因为生成函数中的while循环和while循环bellow####正在运行的while循环中没有中断条件。。。关键字global用于通知解释器,在使用该变量时,它应该使用全局变量…因此,如果没有全局变量,那么它将给出错误…因此,一个空的declaration
which = ""
def inputnfo():
    global much