2016-10-07 22 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

mainの最初の2行が何をすると思いますか?あなたがそこで何をしているのか考えてみると、あなたのエラーは明らかになります。また、コードには他のエラーもあります。 –

答えて

1

number1が定義されていない - それを定義しているときは、別の関数に渡すことはできません。

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

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

私は自分のコードの最初の部分を修正したようですが、表示する最大量を得ることができない、正しく書き込まれたprintInfoモジュールですか?私は "max"関数を使ったことが一度もありませんので、これは私にとって初めてのことです。 – christopher

関連する問題