From the course: Programming Foundations: Fundamentals

Returning values from functions - Python Tutorial

From the course: Programming Foundations: Fundamentals

Returning values from functions

- Growing up, your mom may have asked you to go get the mail so you leave, get the mail and then you bring it back to her. Other times, she may have asked you to wash the dishes so you go and wash the dishes, there's nothing to bring back. That's kind of like the functions we've been creating so far. They do some work and then that's it. But when you need something back, just like how your mom expected the mail, you can use functions that return a value. Let's move over to VS Code to see it in action. Here, on line number one we've created a function and it's called, withdraw money. It takes in, two parameters. The first one is current balance. This stores the current amount of money that you have in your account. The second parameter is named amount. This is the amount that you want to withdraw. Then, on line number two, we have an if statement. The if statement checks to make sure you have enough money in your account to cover the amount that you want withdrawn. If you do, then we come to line number three where we update the current balance with some simple subtraction. We take the current balance and we subtract the amounts. And then finally, on line number four, we print out what the current balance is using this variation of the print function. Here on line number six, we make our call to the withdraw money function. We pass in a 100 for the current balance and 80 for the amount. Let's run the function to check the output. And as you expected, the balance is 20. Now, let's say after we withdraw the money we want to check the new balance later in our program to see if we need to make a deposit. This is where returning a value from our function comes in handy. In Python, when creating a function using the def statement, you can specify what the return value should be with a return statement. A return statement consists of the return keyword and the value that the function should return. Remember, Python has over 30 keywords that it uses to take special actions. Return is one of those keywords. We need to make a few changes in order to take advantage of the return keyword. The first thing we're going to do is on line number three, we'll hit Enter and then we're going to return the current balance. We're going to use the return keyword in order to do that so we'll just type return and then current underscore balance. The next change we need to make is to copy this print statement and remove it outside of our function. Since we're going to use it later, let's not completely delete it. We'll just cut and remove that extra line. Okay, great, we're almost done. Coming down to line number six, since we want to use the value for later, we need to store it inside of a variable. To do that, we'll go to the beginning of the line and we're going to create a variable that we call, balance. And we'll use the equal sign in order to assign it the value from our function. The final thing we want to do is to add an if-else to check and see if we need to make a deposit. So, underneath this function call, let's create our if statement. We're going to check if the balance is less than 50. Then we're going to say, we need to make a deposit. Else, we're going to print out, nothing to see here and that's it. Let's save our file and then run this code. Perfect, we get a message, we need to make a deposit. That's because our balance variable now has the value of 20 so we fall inside of our if statement and it's letting us know that we need to make a deposit. Being able to return values from functions is a cornerstone of programming. I can't wait to see what you're able to build with this new power.

Contents