Functions have return values

We did take a look at the input of functions. Now lets take a look at the output.

Functions have always return values. If no return statement is given, None is returned implicitly.

Example with implicit return value:

def days_and_hours_in_minutes(hours, days=0):
    minutes_days = days * 24 * 60
    minutes_hours = hours * 60
    minutes = minutes_days + minutes_hours
    print("The result is", minutes, "minutes")
    # implicit return None


return_value = days_and_hours_in_minutes(32)
print(return_value)  # prints out None

Example with explicit return value:

def days_and_hours_in_minutes(hours, days=0):
    minutes_days = days * 24 * 60
    minutes_hours = hours * 60
    minutes = minutes_days + minutes_hours
    return minutes


return_value = days_and_hours_in_minutes(32)
print("The result is", return_value, "minutes")

return_value = days_and_hours_in_minutes(32, 14)
print("The result is", return_value, "minutes")

return_value = days_and_hours_in_minutes(days=15, hours=6)
print("The result is", return_value, "minutes")