2016-10-07 51 views
-2

我在第2行收到错误,说我有一个unboundLocal错误。任何人都可以向我解释如何解决这个问题?UnboundLocalError:分配前引用的局部变量'number1'

def main(): 
      number1=getNumber1(number1) 
      number2=getNumber2(number2) 
      userIntro='' 
      printInfo=0.0 
      answer=0.0 
    #intro module welcomes the user 
     def userIntro(): 
      print('hello welcome to my maximum value calculator') 
      print('today we will evaluate two number and display the greater one') 
    #this module gets the value of number1 
     def getNumber1(number1): 
      number1=print(input('Enter the value of number1')) 
      return (getNumber1) 
    #this module gets the value of number2  
     def getnumber2(number2): 
      number2=print(input('Enter the value of number2')) 
      return (getNumber2) 
    #this module takes the values of number1,number2 and displays the greater value  
     def printInfo(number1,number2,answer): 
      answer=max(number1,number2) 
      return (answer) 
     main() 
+0

'数字1 = getNumber1(数量1) NUMBER2 = getNumber2(数字2)'你想创造和传递变量该功能在同一时间? – Nf4r

+0

你预计主要的前两行是做什么的?想想你在那里做什么,你的错误将变得清晰。此外,您的代码还有其他错误。 –

回答

1

number1在创建它之前没有定义 - 在定义它时不能将它传递给另一个函数。好像你需要一个简单的功能要分配给该得到名称:

def main(): 
    number1 = getNumber('number1') 
    number2 = getNumber('number2') 

def getNumber(name): 
    return input('Enter the value of ' + name)) 
+0

我似乎已经修复了我的代码的开始部分,但我似乎无法获得最大的显示量,printInfo模块是否正确写入?我从来没有使用“最大”功能,所以这对我来说都是新的。 – christopher

相关问题