Printing return value in function

55,916

It does return the result, but you do not assign it to anything. Thus, the result variable is not defined when you try to print it and raises an error.

Adjust your total function and assign the value that sums returns to a variable, in this case response for more clarity on the difference to the variable result defined in the scope of the sums function. Once you have assigned it to a variable, you can print it using the variable.

def total(firstAge,secondAge):
    response = sums(firstAge,secondAge)
    print(response)
Share:
55,916
Cornel
Author by

Cornel

Updated on December 17, 2020

Comments

  • Cornel
    Cornel over 3 years

    The print(result) in my total function isn't printing my result.

    Shouldn't the sums function return the result value to the function that called it?

    This is my code:

    def main():
    
      #Get the user's age and user's best friend's age.
    
      firstAge = int(input("Enter your age: "))
      secondAge = int(input("Enter your best friend's age: "))
      total(firstAge,secondAge)
    
    def total(firstAge,secondAge):
      sums(firstAge,secondAge)
      print(result)
    
    #The sum function accepts two integers arguments and returns the sum of those arguments as an integer.
    
    def sums(num1,num2):
      result = int(num1+num2)
      return result
    
    main()
    

    I'm using Python-3.6.1.