Python Jumpstart by Building 10 Apps Transcripts
Chapter: Welcome to the course
Lecture: Welcome and thanks for coming
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
Hello and welcome to my course Python Jumpstart By Building Ten Applications. Whether you are entirely new to Python,
0:07
or you have had some experience with it, but you would like to understand the language better,
0:09
I think you'll have a lot of fun building these ten applications with me and learning the core language concepts along the way.
0:18
I've carefully chosen these ten applications to make them small enough that you can focus on the essential language constructs
0:26
while you are building the application, and there won't be too much extra stuff to distract you, but hopefully they are big enough
0:33
and complex enough that they are interesting to you, and you'll see we start out quite simple, but as we build up they get more and more complex,
0:40
more and more realistic, I would say. Welcome to the course, we are going to have a lot of fun! Let's talk about what we are going to build.
0:46
We are going to start at "Hello World", and this in not just to test that you can write "print('Hello world!')", that would be kind of silly,
0:53
we actually do just a little more than that, but we are also going to make the focus of this app to make sure that your setup is right,
1:00
that you've got Python installed, that you are using the right version, it's in your path, all the various things
1:04
you need to make sure your environment is working, your editor configured correctly, all those kind of things.
1:09
Then, we are going to get to our first what you might think of as real app.
1:12
Guess that number game, and the computer is going to randomly choose a number and it's going to ask the user, "hey, what number do you think I guessed"
1:21
and it will sort of say, "too high/ too low," you may know this game. So that will let us work with things like user input,
1:26
converting strings to numbers, conditional statements, booleans, all those foundational language constructs.
1:33
Then, the next one we are going to focus on is a birthday countdown application, and this will let us really explore dates, time,
1:39
differences between dates, the various things like that. Once you have finished with this app
1:43
you will be very comfortable working with dates in the Python language, and the idea here is the user is going to enter their birthday,
1:50
we'll then use that information to figure out how many days their birthday is in the future of that year,
1:55
or how many days it's already been since it's gone by. The fourth app we are going to build is a personal journal or diary.
2:02
This app is fairly complex, we are going to look at a lot of really useful and central features to the language.
2:09
We are going to focus mostly on file I/O, but also partitioning our app into many different files
2:15
and reusing those files to build up a more complex application. We are going to dig into functions, and a lot more.
2:23
So, these first four apps will just run on our computer, and that's great, but we live in a connected world,
2:28
so this fifth application is going to be a weather client. We are going to actually go out to the Internet
2:34
and get the weather wherever you happen to be located. You will enter your zip code and out will pop a weather report,
2:40
a real, live weather report that is up to date to the minute. Now we are going to use a lot of cool language features and packages
2:47
to build this one, so we are going to focus specifically on how you go to the Python package index often referred to as PyPi,
2:54
and grab these packages, install them locally and use them to construct something that will let us get our weather report.
3:01
We are going to do some HTTP request, we are going to do some screen scraping, HTML parsing, things like that.
3:08
At this point, we are going to need a little laugh. We've built these five apps and we've worked with the Internet, but we've only gotten text back,
3:16
so this LOL Cat Factory is going to let us dig into the concept of binary files, so we'll combine the fact that we are going to go to the Internet,
3:23
grab some binary data, in this case very important LOL Cat pictures, save those to binary files on the disk, and then explore them with Python.
3:33
Have you ever played DnD or some of these types of games? Well, it's time for a wizard battle, so we are going to make a game
3:40
where we have things like wizards, and dragons and so on, and this is kind of a text roll playing game,
3:46
we'll create a wizard and the wizard will be part of this ecosystem where he battles different creatures and so on.
3:52
Now, for this, we are going to really dig into the concept of classes, object oriented programming, inheritance, doc typing,
4:00
all of the OO type building blocks that really make Python a powerful language.
4:05
Number eight, we are going to build this file searcher so you can enter some text, and it will go through your system, your hard drive,
4:12
look at all the different files, pull out the various pieces of text and give you little report on it.
4:18
Number nine, we are going to build a real estate investor application. We are going to start with CSV file full of real estate transactions data,
4:28
historical data for particular location, and then we are going to write an application that will let you answer questions about it,
4:35
what is the average price of a house that has two bedrooms sold in this location,
4:40
what is the most valuable house ever sold that had one bathroom and one bedroom. Those types of things.
4:46
So we are going to work with this file format CSV which most of you should be very familiar with,
4:51
but the idea will be easily translatable to other formats as well of course, and we are going to really focus on two Pythonic concepts here,
5:00
two language features in the Python language that are fairly unique to Python, that is generator expressions and list comprehensions.
5:09
Either way is to do almost database like query work in your procedural code, so it's super powerful, super interesting
5:17
for answering the types of questions this app might ask. Last but not least, we are going to have a movie lookup app.
5:24
So, in this application, it's going to go out to the Internet again, and give you information about movies,
5:30
but the thing we are actually going to focus on is not so much the Internet part, we did that in five and six already,
5:36
we are going to focus on errors, exceptions, error handling, things like that. What if you can't get to the Internet,
5:43
what if the site is down, what if it returns data you don't expect, how do you write an application that fails gracefully
5:48
or maybe it doesn't fail at all? So, that's what we are going to focus on, these are our ten applications. If you are brand new to Python
5:55
I recommend you go in order. If you kind of know what you are doing, if you look at the second one and go, "I know all these things,"
6:03
feel free to skip around. But, I would encourage you to go and look through the list of the core concepts,
6:09
each chapter, each application has a set of core concepts that are list out, and if you don't know those, be sure to go back and look at that first,
6:17
because they kind of build on each other, even though they are somewhat independent.