 Hey, what's going on guys? Root of the Null here, and bringing you back with another Python tutorial. Now, you may notice that I don't have the little side notes here on the side of my screen, and that's because I feel like at this point in the video series you guys have gained so much more of an understanding and so much more of a grasp on Python. You understand the linguistics of the language, you can see how things are spelt out, you know the syntax and that sort of thing. So, I don't think we need to cover that on the sidebar, I'm just going to get to programming and we can do what we need to do. And yeah, that's really all I'm going to touch on with that, but I hope you guys don't miss it. I mean, it was obnoxious to me and I'm actually zoomed in a little bit more on my screen, so you guys should see more of the code and it should be a little bit bigger and easier to read. But anyway, let's get started. I'm going to open up idle, create a new window. I'll just move this over here so it's a little bit spread out. We don't need this window. Go away. I can save this as file.python as usual. Overwrite anything that's there if there is anything there. Use the bin environment in Python, we can get a shebang line going on. And let's create a new class. I'm just going to call this class base, that's really all we need right now. And let's create a constructor, remember that's the init keyword wrapped in two underscores. You need a self keyword inside the parameters because whenever you're creating a function inside of a class or an object you need that. Don't forget guys, don't forget. So let's just have them print out, hey, hello world. I'll just call this a new object and the new object can be an example or an instance of that base class. Let's run this with f5 and everything works perfectly fine, that's awesome. So now let's talk about what we wanted to talk about in this video. What I'm going to be showing you guys today is a way of using tuples or lots of information and passing that in as an argument. Not really in that sense of the way too because it's taking what it finds as arguments and considering that to be a tuple. So let's try self and what we're going to do is we're going to say numbers. Now see this parameter, this argument that we're passing in has this asterisk in front of it. And this means that it's going to be able to recognize this as a list of parameters. So we've got all that set and that's all we need. So self.numbers is equal to numbers or whatever we pass in. So now we can define print out and yeah I think that's all that we'll call the function. We'll just print out and then for everything inside our numbers variable we can print out everything. Okay, so now let's try it again. This is going to run and it's because we're not displaying anything out on the screen it runs perfectly fine. But because we haven't passed anything in here that's okay though. Because it's taking this as a list or a tuple it's okay that we aren't passing any arguments because it's just going to pass in a blank list. So in our case if we had the new object print out all you're going to see is a couple of blank parentheses. We run this again. First of all let's have it. There's nothing in the list first of all so we should just print out self.numbers. And then we'll create a new line. We can turn this into a string I suppose. And then we can add a new line, an escape character. So we can print this out and see now you have this blank list. There's nothing in there because we haven't passed anything in. But if we did pass in some numbers it doesn't matter how many we supply. It's going to consider them all as this one variable. And that's why this works here because it's considered to be a tuple. So let's pass in some random numbers. Let's go three, four, that's nine actually that's not four. I'm retarded five, ten. And that's all for now how about that. So if we run this we have that list three, nine, five, ten. Excuse me the tuple and then inside there we can test out we have three, we have nine, we have five, we have ten. And that sort of thing because we've gone for everything inside that tuple and we've made it a local variable now it's part of that object scope because we've set up numbers as what we pass in. Self.numbers when we get everything out of there it's just going to print it all out and then it's going to display everything line by line so that's what we have here. Now we can pass in anything here. We can of course obviously use strings, this sort of thing. We might want to change this to letters. I really hate the fact that idle does not want to delete anything when you pay something new in. It just aggravates me. Can you kill that? And we'll rename the variable. Oh we probably should have named it strings but oh well whatever I'm not going to bother with it now. We run this again F5 we have strings and this sort of thing and strings this sort of thing and that sort of thing. So yeah we're able to pass in as many of these arguments as we want and they will be considered one variable. That's all I want to tell you guys about today. But before we jump anywhere further with that why don't we set up maybe let's see zero. We can pass in zero and zero is going to be anything else. So if we, it's going to be that first variable, that first argument of that first parameter because we're going to have to pass that in and then anything after that is going to be considered part of this of this tuple, these letters. So if we just passed in, if we did only this, if we ran it with strings and this sort of thing, this sort of thing is the only thing that's going to be inside this letters tuple here so let's try it. Oh there is an error in my program, expected an indented block. Wow, why is there a random s? That's weird. I must have put that there on accident. Sorry, try to save the, yeah try to save the program we just print out s, whatever. So this sort of thing and we print out this sort of thing. That's all that we get because it's interpreting this first argument as zero or that first parameter that we're passing in here. So if we did actual another zero for real, we pass in zero and then all these strings are going to be part of that tuple. Run it again, we get strings and this sort of thing. So you guys can understand there's an order of like authority or precedence or whatever you want to call it because this is the first thing we pass in, this is going to be the first thing we pass in. But this asterisk here in front of the other variable denotes that everything after this is going to be inside of a tuple. And we don't need it again when we're calling that thing inside. We don't need the asterisk again when we're calling it inside of the class definition. So yeah, there you go. I hope that's a little bit more information, that's just a quick run through but I myself don't really use this tactic too often. But there you go guys, thank you for watching, thank you for listening and I will see you again in the next tutorial.