The Python Mega Course 2022: Build 10 Real-World Programs

The Python Mega Course 2022: Build 10 Real-World Programs

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 340 lectures (33h 19m) | 14.6 GB

Go from Python absolute beginner to building advanced Python programs! Learn Django, Flask, GUI, web scraping, & more!

The Python Mega Course is an online course that uses a hands-on teaching approach which has proved to be very successful with thousands of students who have taken the course, built their own programs, and even found a Python job afterward. With 50,000+ student reviews and an outstanding 4.6 average rating, this learning package guarantees you will become a Python programmer after successful completion. The course focuses on teaching you Python by building real-world Python programs. That way, you learn the language syntax, but most importantly, you will learn the actual skill of designing and building real-life programs.

Will I be able to find a job after completing this course?
That is up to how you take the course. Simply watching the videos is not enough. You should try the code on your computer, change it, rerun it, improve it further, fix the bugs, try making a similar app, and ask questions in the Q&A when you get stuck. You will be guided through that entire process, so don’t worry about falling off track.

I don’t know anything about programming. Will I still be able to learn Python?
Yes. This course assumes you have no previous knowledge of programming. Whenever a new programming term emerges in the lectures, we will first explain it academically. Then we use it practically in a real-world code example and reuse it in exercises until you learn everything by heart.

I know Python basics. Is this course for me?
Yes. The first 12 sections of the course cover Python basics. The other 27 sections cover intermediate and advanced Python, and you can jump right into those sections if you know the basics.

What are the ten applications that students will build?
The ten apps covered in the course are: (1) A volcano web map generator, (2) an object detector app that detects moving objects from your computer live webcam, (3) a personal website built with Python and Flask, (4) a book inventory desktop GUI app that has an SQL database backend, (5) a data analysis and visualization dashboard that processes thousands of data records, (6) a mobile app that runs on Android and iOS devices, (7) a program that scrapes data from multiple webpages containing listings of real-estate properties for sale, (8) a web app that collects users’ data via a form and sends users emails, (9) a blog and a translator web app with Django, and (10) a web app that processes Excel files and lets users download the processed files.

What you’ll learn

  • Become a Python programmer by learning to build real-world apps in Python 3
  • Build desktop database apps, webcam motion detectors, data visualization dashboards, blog websites, web scrapers, and more
  • Practice the skills with hundreds of interactive Python exercises and projects
  • Build a personal website entirely in Python
  • Build a mobile app that improves your mood with positive quotes
  • Create a web app that processes Excel and CSV files
  • Build a book inventory GUI app with an SQL database backend
  • Create a webcam app that records video and detects moving objects
  • Create a web scraper that extracts real-estate data
  • Create a modern data visualization app
  • Build an app that sends automated emails
  • Interact with our Python online community and get help when you need it
Table of Contents

1 Define Your Python Learning Path
2 What Version of Python Should You Use
3 Setting up Python and the IDE on Windows
4 Setting up Python and the IDE on Mac
5 Setting up Python and the IDE on Linux
6 Getting Help
7 Important – Don’t Skip

The Basics Getting Started with Python
8 Writing Our First Python Program
9 Variables and their Use in a Program
10 The Python Shell
11 Cheatsheet (Getting Started with Python)

The Basics Data Types
12 Quick Info
13 Simple Types Integers, Strings, and Floats
14 List Types
15 Ranges
16 Attributes
17 Did You Know
18 How to Find Out What Code You Need
19 Bonus Steps of Learning Python
20 Dictionary Types
21 Did You Know
22 Tuple Types
23 How to Use Datatypes in the Real World
24 Did You Know
25 Cheatsheet (Data Types)
26 Better Error Messages in Python 3.10

The Basics Operations with Data Types
27 Python Shell and Terminal
28 List Reminder
29 More Operations with Lists
30 Accessing List Items
31 Accessing List Slices
32 Accessing Items and Slices with Negative Indexes
33 Accessing Characters and Slices in Strings
34 Dictionary Reminder
35 Accessing Items in Dictionaries
36 Tip Converting Between Datatypes
37 Cheatsheet (Operations with Data Types)

The Basics Functions and Conditionals
38 Creating Your Own Functions
39 Print or Return
40 Intro to Conditionals
41 If Conditional Example
42 Bonus Code Using and and or in a Conditional
43 Conditional Explained Line by Line
44 More on Conditionals
45 Elif Conditionals
46 White Space
47 Cheatsheet (Functions and Conditionals)

The Basics Processing User Input
48 User Input
49 String Formatting
50 String Formatting with Multiple Variables
51 Cheatsheet (Processing User Input)

The Basics Loops
52 For Loops How and Why
53 For Loop Over a Function
54 Did You Know
55 Looping Through a Dictionary
56 Bonus Code Dictionary Loop and String Formatting
57 While Loops How and Why
58 While Loop Example with User Input
59 While Loops with Break and Continue
60 Cheatsheet (Loops)

Putting the Pieces Together Building a Program
61 Problem Statement
62 Approaching the Problem
63 Building the Maker Function
64 Constructing the Loop
65 Making the Output User-Friendly

List Comprehensions
66 Simple List Comprehension
67 List Comprehension with If Conditional
68 List Comprehension with If-Else Conditional
69 Cheatsheet (List Comprehensions)

More About Functions
70 Functions with Multiple Arguments
71 Did You Know
72 Default and Non-default Parameters and Keyword and Non-keyword Arguments
73 Functions with an Arbitrary Number of Non-keyword Arguments
74 Functions with an Arbitrary Number of Keyword Arguments
75 Cheatsheet (More on Functions)

File Processing
76 Processing Files with Python
77 Reading Text From a File
78 File Cursor
79 Closing a File
80 Opening Files Using with
81 Different Filepaths
82 Writing Text to a File
83 Appending Text to an Existing File
84 Cheatsheett (File Processing)

85 Builtin Modules
86 Standard Python Modules
87 Third-Party Modules
88 Third-Party Module Example
89 Cheatsheet (Imported Modules)

Using Python with CSV, JSON, and Excel Files
90 The pandas Data Analysis Library
91 Installing pandas
92 Getting Started with pandas
93 Installing Jupyter
94 Getting Started with Jupyter
95 Loading CSV Files
96 Exercise Loading JSON Files
97 Solution Loading JSON Files
98 Note on Loading Excel Files
99 Loading Excel Files
100 Loading Data from Plain Text Files
101 Set Table Header Row
102 Set Column Names
103 Set Index Column
104 Filtering Data from a pandas Dataframe
105 Deleting Columns and Rows
106 Updating and Adding new Columns and Rows
107 Note
108 Data Analysis Example Converting Addresses to Coordinates

Numerical and Scientific Computing with Python and Numpy
109 What is Numpy
110 Installing OpenCV
111 Convert Images to Numpy Arrays
112 Indexing, Slicing, and Iterating Numpy Arrays
113 Stacking and Splitting Numpy Arrays

App 1 Web Mapping with Python Interactive Mapping of Population and Volcanoes
114 Welcome to the First App
115 Demo of the Web Map
116 Creating an HTML Map with Python
117 Note
118 Adding a Marker to the Map
119 Practicing for-loops by Adding Multiple Markers
120 Practicing File Processing by Adding Markers from Files
121 Practicing String Manipulation by Adding Text on the Map Popup Window
122 Adding HTML on Popups
123 Practicing Functions by Creating a Color Generation Function for Markers
124 Exercise Add and Stylize Markers
125 Tip on Adding and Stylizing Markers
126 Solution Add and Stylize Markers
127 Exploring the Population JSON Data
128 Practicing JSON Data by Adding a Population Map Layer from the Data
129 Stylizing the Population Layer
130 Adding a Layer Control Panel

Fixing Programming Errors
131 Syntax Errors
132 Runtime Errors
133 How to Fix Difficult Errors
134 How to Ask a Good Programming Question
135 Making the Code Handle Errors by Itself

Image and Video Processing with Python
136 Introduction
137 Installing the Library
138 Loading, Displaying, Resizing, and Creating Images
139 Exercise Batch Image Resizing
140 Solution Batch Image Resizing
141 Solution Further Explained
142 Detecting Faces in Images
143 Capturing Video with Python

App 2 Controlling the Webcam and Detecting Objects
144 Demo of the Webcam Motion Detector App
145 Detecting Moving Objects from the Webcam
146 Storing Object Detection Timestamps in a CSV File

Interactive Data Visualization with Python and Bokeh
147 Introduction to Bokeh
148 Installing Bokeh
149 Your First Bokeh Plot
150 Exercise Plotting Triangles and Circles
151 Solution Plotting Triangles and Circles
152 Using Bokeh with Pandas
153 Exercise Plotting Education Data
154 Solution Plotting Education Data
155 Note on Loading Excel Files
156 Changing Plot Properties
157 Exercise Plotting Weather Data
158 Solution Plotting Weather Data
159 Changing Visual Attributes
160 Creating a Time-series Plot
161 More Visualization Examples with Bokeh
162 Plotting Time Intervals from the Data Generated by the Webcam App
163 Implementing a Hover Feature

App 3 (Part 1) Data Analysis and Visualisation with Pandas and Matplotlib
164 Preview of the End Results
165 Installing the Required Libraries
166 Starting Jupyter
167 Exploring the Dataset with Python and pandas
168 Selecting Data
169 Filtering the Dataset
170 Time-Based Filtering
171 Turning Data into Information
172 Aggregating and Plotting Average Ratings by Day
173 Downsampling and Plotting Average Ratings by Week
174 Downsampling and Plotting Average Ratings by Month
175 Average Ratings by Course by Month
176 What Day of the Week are People the Happiest
177 Other Types of Plots

App 3 (Part 2) Data Analysis and Visualization – in-Browser Interactive Plots
178 Note
179 Intro to the Interactive Visualization Section
180 Making a Simple Web App
181 Making a Data Visualization Web App
182 Changing Graph Labels in the Web App
183 Adding a Time-Series Graph to the Web App
184 Exercise Monthly Time-Series
185 Solution Monthly Time-Series
186 Multiple Time-Series Plots
187 Multiple Time-Series Streamgraph
188 Exercise Interactive Chart to Find the Happiest Day of the Week
189 Solution Interactive Chart to Find the Happiest Day of the Week
190 Adding a Pie Chart to the Web App

App 4 Web Development with Flask – Build a Personal Website
191 Demo of the Personal Website
192 Building Your First Website
193 Preparing HTML Templates
194 Adding a Website Navigation Menu
195 Note on Browser Caching
196 Improving the Website Frontend with CSS
197 Creating a Python Virtual Environment
198 How to Use the PythonAnywhere Service
199 Deploying the Flask on PythonAnywhere
200 Congratulations!

Building Desktop Graphical User Interfaces (GUI) with Python
201 Introduction to the Tkinter Library
202 Creating a GUI Window and Adding Widgets
203 Connecting GUI Widgets with Functions
204 Exercise Create a Multi-Widget GUI
205 Solution Create a Multi-Widget GUI

Interacting with Databases
206 How Python Interacts with Databases
207 Connecting to an SQLite Database with Python
208 (SQLite) Selecting, Inserting, Deleting, and Updating SQL Records
209 PostgreSQL Database with Python
210 (PostGreSQL) Selecting, Inserting, Deleting, and Updating SQL Records

App 5 GUI Apps and SQL Build a Book Inventory Desktop GUI Database App
211 Demo of the Book Inventory App
212 Designing the User Interface
213 Coding the Frontend Interface
214 Coding the Backend
215 Connecting the Frontend with the Backend, Part 1
216 Connecting the Frontend with the Backend, Part 2
217 Exercise Fixing a Bug in Our Program
218 Solution Fixing a Bug in Our Program
219 Creating .exe and .app Executables from the Python Script

Object-Oriented Programming (OOP)
220 What is Object Oriented Programming (OOP)
221 Using OOP in a Program, Part 1
222 Using OOP in a Program, Part 2
223 Creating a Bank Account Class
224 Creating Classes Through Inheritance
225 OOP Glossary
226 Exercise Rewriting the App Using Classes and OOP
227 Solution Rewriting the App Using Classes and OOP

App 6 Mobile App Development Build a Feel-Good App
228 Demo of the Mobile App
229 Installing the Library
230 Creating a User Login Page
231 Creating a User Sign Up Page
232 Capturing User Input
233 Processing User Sign Ups
234 Creating a Sign Up Success Page
235 Switching Between Pages
236 Processing User Login Credentials
237 Displaying Output to the User
238 Stylizing the Login Page
239 Stylizing the Sign Up Page
240 Making the Buttons Interactive
241 Making a Scrollable Area

Making an Android APK File from the Kivy App
242 Note
243 Preparing the Environment for Deploying the App to and Android Phone
244 Creating an APK file for Android
245 Installing the APK file on Android
246 Deploying to iOS

Web Scraping with Python & Beautiful Soup
247 Section Introduction
248 How Web Scraping Works
249 Link Update
250 Web Scraping Example with Python

App 7 Web Scraping – Scraping Properties for Sale from the Web
251 Demo of the Web Scraping App
252 Note The New Website URL
253 Loading the Webpage in Python
254 Extracting div Elements
255 Scraping the Addresses of the Properties
256 Scraping Special Elements
257 Saving the Extracted Data in CSV Files
258 Crawling Through Multiple Web Pages

App 8 Flask and PostGreSQL – Build a Data Collector Web App
259 Demo of the Data Collector Web App
260 Steps of Creating a PostGreSQL Database Web App with Flask
261 Creating a Page with HTML
262 Stylizing the HTML Page with CSS
263 Capturing User Input
264 Creating the PostGreSQL Database Model
265 Storing User Data to the Database
266 Emailing Database Values Back to User
267 Emailing Data Statistics to Users
268 Deploying the Database Web App Online
269 Creating a Download-Upload Feature

App 9 Django & Bootstrap Blog and Translator App
270 Demo of the App
271 A Comparison of Python Web Frameworks
272 Setting Up a Virtual Environment
273 Creating a Django Project
274 Creating a Superuser for the Project
275 Setting up an Empty Django Blog App
276 Creating a Database Model for the Blog App
277 Overview of the Web App Architecture
278 HTML Templates
279 Django Views
280 URL Patterns
281 Creating Admin Interface Views
282 Creating a Homepage
283 Creating an About Page
284 Listing Blog Posts on the Homepage
285 Creating Links
286 Adding Bootstrap to Django
287 Django Template Filters
288 Template Inheritance
289 Applying Bootstrap Styling to the Navigation Menu
290 Demo of the Django Translation App
291 The Steps of Django App Development
292 Creating an Empty App Structure of the Translator
293 Creating an HTML Form in Django
294 Configuring the URLs
295 Creating a Form
296 Getting and Processing User Input Through a Form
297 Completing the Translator App

App 10 (Project) – Build a Geography Web App with Flask and Pandas
298 Demo of the Geography Web App
299 Solution, Part 1
300 Solution, Part 2
301 End of the Course

Bonus Exercises
302 Introduction

Bonus App Building an English Thesaurus
303 Note
304 Demo of the Interactive English Dictionary App
305 Know Your Dataset
306 Loading JSON Data
307 Returning the Definition of a Word
308 Non-Existing Words
309 Dealing with Case-Sensitive Words
310 Calculating the Similarity Between Words
311 Best Matches out of a List of Words
312 Finding the Most Similar Word from a Group of Words
313 Getting Confirmation from the User
314 Optimizing the Final Output
315 Exercise Making Version 1.1 of the Program
316 Solution Making Version 1.2 of the Program
317 Exercise Making Version 1.2 of the Program
318 Solution Making Version 1.2 of the Program

Bonus App Building a Website Blocker
319 Demo of the Website Blocker
320 Application Architecture
321 Setting up the Script
322 Setting up the Infinite Loop
323 Implementing the First Part
324 Implementing the Second Part
325 Scheduling the Python Program on Windows
326 Scheduling the Python Program on Mac and Linux

Bonus App Data Visualization Dashboard with Bokeh
327 Demo of the Data Visualization Dashboard App
328 Downloading Datasets with Python
329 Stock Market Data
330 Stock Market Data Candlestick Charts
331 Candlestick Charts with Bokeh Quadrants
332 Candlestick Charts with Bokeh Rectangles
333 Candlestick Segments
334 Stylizing the Chart
335 The Concept Behind Embedding Bokeh Charts in a Flask Webpage
336 Note
337 Embedding the Bokeh Chart in a Webpage
338 Deploying the Chart Website to a Live Server

Bonus Exercises
339 About this Section

340 Bonus Lecture