 we're going to make one last improvement to our timer. So far, the number of seconds that it times for has been written as part of the code. It's been hard-coded into our program. This is a little bit awkward. It means if we want to make a timer for a different length of time, we have to open up the file, modify it, save it, close it, run it. It's not a very smooth user experience for our timer. We'll be able to get around this by adding what's called a command line argument. What this is, is when we go to run python timer underscore o5.py, we can add another space and then type a number. That's the command line argument. The way we get at it is we import another package, sys. This lets us get at system tools. In this particular case, the system, so in this case our command line, it pulls in everything we type when we hit enter. Python or Python 3, the name of the file, timer underscore o5.py, and then whatever comes after that. Each thing, space delimited, so separated by spaces, it'll pull out and make a separate chunk of. So whatever comes after Python 3 is a set of arguments. The first one is timer underscore o5.py, and the next one in this case is a 4. The way we get at that is after our import sys, we can say sys.argv. Argv is the list of our command line arguments. It's everything that comes after Python. It's timer underscore o5.py, and then it's the number 4. These things come in a list, and we can pull them out by using their position in the list in square brackets. In this case, argv square brackets 1 pulls out the second thing in the list, because Python starts counting at 0. So in this case, it pulls out our number 4. Now it's still a string, so this is just a numeral 4. It's just the character 4. We need to turn that into a number. There's a special keyword in Python for doing this called float. So float says, take whatever is in my parentheses and try to turn it into a floating point number. So in this case, it'll take that character 4, which very nicely converts into the number 4, and that then becomes our seconds left. We've modified the interval here to be 0.01, 1 1⁄100 of a second, and then we have our same while loop. Initialize done to be false. Until it's false, while it's not done, step through the interval, print how many seconds are left, decrement it, check whether it's 0, and when it becomes 0, say done, and then print the ding. So what's new about our Timer 5 is we have the sys library, the argv list of command line arguments, and we pull out the second command line argument, which will be our time, and we cast it to a floating point number. And then when we go to test this, it becomes a very convenient timer because we can say Python Timer05.py and then any number, and it'll give us a timer of that length. So if we're doing something and we want to say, OK, set this for so many seconds, set it up, go, it's good to go. So this is pretty fun. You've built two things now or seen how they've built and know how to go in and make changes to them to customize them, a clock and a timer. The code so far has not been long. This has been the longest chunk. But the concepts that we've been able to touch on so far already are pretty important, for loops, while loops, libraries, f strings for printing, and we've been able to touch on logic if statements, the time library, the sys library, some pretty big things and just building a couple of small projects. In the remaining projects in this course, we're going to go on to do more of the same. We're going to be building small tools and in the process one by one pulling in core Python concepts and really useful Python tools and showing how they work.