 There are two very special operators in Python. The star, which is, put it here, okay, the star, which is, we append that, you will prepend that to a variable in the function. This is called the unpacking operator. This is also an unpacking operator. Both of these are special. Okay, so this one here says accepts I guess, positional arguments. I mean, that's a better explanation. This one here accepts, I get keyword arguments, kind of a key value pair, okay, takes key value pair. And so I wanna show you what that means in this example here. Let me clear this whole thing here, okay. So for example, we have a function, say, you know, total, it takes two arguments, A and B, and in here, you would do like, you wanna return the total, so you can say, return A plus B, right? We're simple like that. Yeah, that's fine because, you know, that's how it is. Only thing is because now you are limited to exactly two arguments, and so you must apply both arguments in order for this to work. And so if you run this now, and you would see that in the console, I'm gonna go here and run this. If I say, if I pass like total, you know, one and two, I'm gonna get three, right? That's pretty expected. However, if I put only one number, then I get an error because it doesn't make the requirements. Or if I put more than what's required, then you're gonna get an error as well because you don't have a position for the third argument. So a solution to this is you put some default values in here, right? If I do this, so if you set the default values, then you resolve some issues. I could do total is only one. I'll get one back, right? If you provide nothing, you're gonna get zero back. Okay, if you provide three though, you're gonna get error again, right? Because the third argument is not there. Okay, so then what do you do? Another solution is you would do the following. So let's say I do this here. Let me comment this out. Another option is instead of doing this way, you could use a list. So maybe like numbers, right? And then because it's a list, you can loop through that list and you assign a total of zero, right? Say for every n and numbers, then you would say total plus, total plus n, and then you'll return t. In this case, it'll work, but remember this has to be a list. So you run, so if I go total, a list would be in a score bracket. If I pass nothing, I get zero back, right? If I pass in one, two, and three, four, and five, doesn't matter, I get all those sums back. I get a total back. Okay, so that results some issues, but only thing is you must pass with a list. If you don't pass as a list, it's not gonna work. So if you go back, if I enter only, you know, eight one, you get an error because one is not an iterable object, right? It's gotta be a list or for this to work, but it does work in many ways. Another shortcut to this is the sum of the list. It's very simple. You could just omit all of these. Of course, there is a function called sum. If it turns purple like this, it's a keyword. And if you were to write a function, if I call it sum, oh, it's case sensitive. You know, if I put sum here, right? That will override the function here. So sometimes you don't wanna use that built-in function. But the sum function will, you know, return the result of the sum of all the numbers and the list, right? So that's a shortcut. It's a shortcut for this. And as you can see, you can do that as well. And you will get the same results before. Oh, I don't have total. I should keep a total. I change it to sum, right? So here we go. It works just fine. Okay, so what you wanna do is you wanna use something like this, but without the list. And that is where the first option here comes into play. Okay, this is the except a positional argument. So what that means is you can do the following. So the numbers here, you put a star in front and then you can return something here. For now, you want to know what this number looks like. So just to see it, you can print the numbers and see what it looks like. If I don't just return zero, okay? So you can see what that's like. Now, when I call the function total, I pass in no numbers, right? I'm gonna get nothing because I get blank. If I pass in a number, then you see I get a one and there's a comma after that. And what you see here in parentheses, this is a tuples, right? If you remember a tuple is wrapped in the parentheses. So we can also find out if it's really true or not. We can print the type of numbers. And let's see what that says. So here we go again, go in here and type in, okay? As you can see, it's the type is of tuple. Okay, it's using the parentheses. So now because you have access to a tuple, remember a tuple is iterable, right? That means you can print it, you can use a loop to grab all the values in the list or in the tuple and then print them out or do whatever you need to do with it. Okay, so that means I can, my number can be anything, it can have any size. I can put one, three, five, 100, right? You can see I get a tuple of those numbers. And now because I have access to all those numbers, I can do the sum of that tuple. So what you can do is the following. For example, you can say for every n numbers, right? And you do like you did before, I can do like t is zero. And then I'll say t plus n and then return t. Okay, so this time you will see that you can pass in any size arguments and it'll work. Okay, you get a total back. If I pass in, you know, just one, two, I get a total back and there it is. So I don't have to use a list, right? So that's what it's used for. Now, if you search for the web or something if you see other videos, you will see that it's commonly used the word args and certain numbers like this because this means arguments, right? But it's just a variable name. You can call whatever you want. It doesn't matter. It's just commonly used args. In most languages, you use args for arguments. If you go to C++ and Java, you will see the args in there as well. So let's argument one star in front. Okay, that's the unpacking operator. You unpacking this entire list here, item here.