Autoplay
Autocomplete
Previous Lesson
Complete and Continue
The Python Mega Course: Build 10 Real World Applications
Introduction
Course Introduction (2:20)
Preview of the 10 Apps
The Tools You Need (1:08)
Installing Python 3 and an IDE on Windows, Mac, or Linux (7:54)
Optimizing the Environment for Python (4:34)
The Basics: Getting Started with Python
Writing Our First Python Program (11:22)
Variables and Their Use in a Program (8:04)
Exercise: Assign Values and Print
Solution: Assign Values and Print
The Python Shell (8:29)
Summary
The Basics: Data Types
Simple Types: Integers, Strings, and Floats (3:21)
List Types (1:31)
Type attributes (2:54)
How to find the code you need (4:34)
Bonus: Steps of Learning Python (1:28)
Dictionary Types (3:43)
Tuple Types (2:26)
How are datatypes used in the real world (1:07)
Summary: Integers, Floats, Lists, Dictionaries, and Tuples
Solution: Create Integers, Strings, and Floats
Exercise: Create Integers, Strings, and Floats
Exercise: Sum Up Numbers
Solution: Sum Up Numbers
Exercise: Create List
Solution: Create List
Exercise: Create Complex List
Solution: Create Complex List
Exercise: Calculate Maximum
Solution: Calculate Maximum
Exercise: Count Values
Solution: Count Values
Exercise: Modify String
Solution: Modify String
The Basics: Operations with Data Types
Python shell and terminal tips (0:52)
More operations with lists (5:56)
Accessing list items (2:04)
Accessing list slices (2:49)
Accessing items and slices with negative indexes (2:02)
Accessing characters and slices in strings (1:30)
Accessing items in dictionaries (1:52)
Summary: Positive/Negative Indexes, Slicing
The Basics: Functions and Conditionals
Creating Your Own Functions (5:25)
Print or return (3:59)
Intro to conditionals (0:58)
If conditional example (3:48)
Bonus Code: Using "and" and "or" in a Conditional
Conditional explained line by line (3:09)
More on conditionals (2:21)
Elif conditionals (1:15)
White space (3:30)
Summary: Functions and Conditionals
The Basics: Processing User Input
User input (7:55)
String formatting (2:44)
String formatting with multiple variables (1:35)
Summary: Processing User Input
The Basics: Loops
For loops, how and why (5:46)
For loop over a function
Looping through a dictionary (1:12)
Bonus code: Dictionary loop and string formatting
While loops: how and why (2:59)
While loop example with user input (3:12)
While loop with break and continue (3:22)
Summary: Loops
Putting the Pieces Together: Building a Program
Problem statement (3:48)
Approaching the problem (1:46)
Building the maker function (5:14)
Constructing the loop (4:39)
Making the output user-friendly (3:28)
List Comprehensions
Simple list comprehension (3:27)
List comprehension with If conditional (1:22)
List comprehension with if-else conditional (1:37)
Summary: List Comprehensions
More on Functions
Functions with multiple arguments (1:45)
Keyword and non-keyword arguments, default and non-default parameters (3:00)
Functions with an arbitrary number of non-keyword arguments (3:32)
Functions with an arbitrary number of keyword arguments (1:34)
Summary: More on Functions
New Lecture
File Processing
The concept of processing files with Python (1:12)
Reading text from a file (3:07)
The cursor (1:49)
Closing a file (1:34)
Opening files using "with" (1:45)
Different file paths (1:25)
Writing text to a file (3:59)
Appending text to an existing File (3:30)
Summary: File Processing
Imported Modules
Builtin modules (5:53)
Standard Python modules (8:34)
Third-party modules (5:49)
Third-party module example (2:45)
Summary: Imported Modules
Getting started
Course Introduction (5:04)
Important Video (1:50)
Create Your First Python Program (7:29)
Useful Commands of the Command Line Interface (8:52)
Running Python Interactively (2:34)
New Lecture
Python Basics
Variables (4:57)
Program output explained (7:04)
Strings (2:33)
Numbers (2:05)
Programming tip
Math operators
Builtin functions (4:41)
Lists (5:28)
List indexing and slicing (5:12)
List slice examples
List methods (3:26)
Tuples
Dictionaries (2:28)
More operations with dictionaries
Getting user input (6:19)
Conditionals (9:56)
Conditionals with multiple conditions (4:03)
Custom functions (3:05)
Custom functions: Example (5:44)
Custom functions: Return vs Print (6:44)
Custom functions with conditionals (4:54)
Custom functions with multiple parameters (2:55)
Custom functions with default parameters (1:27)
Opening external text files (7:23)
Working with file paths (3:47)
Processing the content of a file (5:50)
For loops (7:47)
Writing text to a file (6:53)
Appending text to a file (1:35)
Reading and appending text to a file (2:58)
Beyond the Basics
Section introduction (2:26)
Setting up (5:09)
While loop (5:47)
While loop password checker (3:30)
String formatting (4:06)
Modules, libraries, and packages (11:13)
Datetime objects (8:32)
Iterating multiple sequences (1:53)
The "with" context manager (3:21)
New Lecture
Application 1: Build an Interactive Dictionary
Program demonstration (4:10)
The data source (4:54)
Loading JSON data (3:52)
Returning the definition of a word (3:25)
Counting for non-existing words (2:51)
Implementing case sensitivity (3:09)
Similarity ratio between two words (4:39)
Best match out of a list of words (6:07)
Recommending the best match (9:42)
Confirmation from the user (10:17)
Optimizing the final output (7:51)
Exercise: Fixing a program bug (1)
Solution
Exercise: Fixing a program bug (2)
Solution
New Lecture
Data Analysis with Pandas
What is Pandas (6:37)
Installing Pandas
Getting Started with Pandas (8:37)
Getting Started with Jupyter Notebooks (9:18)
Note
Loading CSV Files (4:20)
Exercise: Loading JSON Files
Solution
Note on Adding Excel Files
Loading Excel Files (0:58)
Loading TXT Files (2:30)
Set Header Row (2:34)
Set Column Names (0:56)
Set Index Column (4:45)
Indexing and Slicing (5:35)
Deleting Columns and Rows (2:30)
Updating and Adding New Columns and Rows (7:31)
Note on Nominatim
Example: Geocoding Addresses with Pandas and Geopy (15:11)
Numpy
What is Numpy (8:07)
Installing OpenCV
Creating Numpy Arrays from Images and Vice-Versa (12:30)
Indexing, Slicing and Iterating (4:57)
Stacking and Splitting (5:44)
Application 2: Create Webmaps with Python and Folium
Demonstration of the Web Mapping Application (1:24)
Creating an Open Street Map with Python (6:34)
Adding Markers to the Map (5:10)
Adding Markers to the Map from CSV Data (9:12)
Rule-based Coloring of Markers (4:31)
More on Rule-based Styling (4:27)
Calculating the Map Center from the Input Data (7:56)
Adjusting the Code for the Latest Version of Folium (8:12)
Adding a Choropleth Map from GeoJson (20:59)
Adding a Layer Control Panel (4:28)
Web Map - How The Output Will Look Like (1:05)
The Basemap (11:35)
Note
Adding Points (8:23)
Adding Multiple Points (4:43)
Adding Points From Files (13:06)
Popup Windows on Map (5:07)
HTML on Popups
Color Points (7:55)
Add and Style Points (Practice)
Tip: Add and Style Points
Solution (1:53)
GeoJson Data (5:34)
Adding a GeoJson Polygon Layer (3:20)
Choropleth Map (9:34)
Layer Control Panel (6:23)
Fixing Programming Errors
Syntax errors (8:22)
Runtime errors (10:58)
Fixing difficult errors (5:38)
The structure of a good programming question (5:59)
Error handling (7:59)
New Lecture
Application 3: Build a Website Blocker
Demonstration of the Website Blocker Application (3:48)
Application Architecture (3:44)
Setting up the Script (9:08)
Setting up the Infinite Loop (11:00)
Implementing the First Part (12:16)
Implementing the Second Part (18:55)
Scheduling the Python Program on Windows (12:39)
Scheduling the Python Program on Mac and Linux (6:15)
Application 4: Build a Website with Python and Flask
Demonstration of the Website (1:42)
Building Your First Website (8:07)
Returning HTML Templates (4:09)
Adding a Navigation Menu (8:32)
Adding CSS Styling (5:59)
Creating a Python Virtual Environment (6:22)
Deploying the Website to a Live Server (21:52)
Maintaining the Website (7:26)
Graphical User Interfaces with Tkinter
Introduction to Tkinter (2:35)
Setting up a GUI with Widgets (9:11)
Connecting GUI Widgets with Callback Functions (9:33)
Interacting with Databases with Python
Introduction to Working with Databases (3:04)
Connecting and Inserting Data to SQLite via Python (13:11)
Selecting, Inserting, Deleting, and Updating SQLite Records (6:58)
Introduction to PostgreSQL Psycopg2 (8:46)
Selecting, Inserting, Deleting, and Updating PostgreSQL Records (12:53)
Application 5: Build a Desktop Database Application
Demonstration of the Database Application (2:25)
User Interface Design (5:54)
Building the Front-end Interface (27:00)
Building the Back-end (24:28)
Connecting the Front-end to the Back-end, Part 1 (17:31)
Connecting the Front-end to the Back-end, Part 2 (21:59)
Creating a Standalone Executable Version of the Program (5:00)
Object Oriented Programming
Object Oriented Programming Explained (4:59)
Turning this Application into OOP Style, Part 1 (13:01)
Turning this Application into OOP Style, Part 2 (14:06)
Creating a Bank Account Object (21:06)
Inheritance (12:08)
OOP Glossary (8:12)
Python for Image and Video Processing with OpenCV
Introduction (2:29)
Installing OpenCV for Python (2:48)
Loading, Displaying, Resizing, and Writing Images with Python (14:00)
Face Detection (19:38)
Capturing Video (19:45)
Application 6: Build a Webcam Motion Detector
Demonstration of the Motion Detector Application (1:59)
Detecting Objects from the Webcam (30:20)
Recording Motion Time (20:38)
Interactive Data Visualization with Python
Introduction to Bokeh (2:02)
Installing Bokeh
Your First Bokeh Plot (13:52)
Plotting Triangles and Circle Glyphs (Practice)
Solution
Using Bokeh With Pandas (4:51)
Plotting Education Data (Practice)
Solution
Note on Loading Excel Files
Plot Properties
Plot Weather Data (Practice)
Solution
Visual Attributes
Time-Series Plots (6:36)
More Visualization Examples with Bokeh (4:21)
Plotting Time Intervals of the Motion Detector (14:05)
Hover Tool Implementation (9:57)
Webscraping with Python Beautiful Soup
Section Introduction (1:57)
The Concept Behind Webscraping (4:30)
Scraping a Webpage with Requests and BeautifulSoup (16:22)
Application 7: Scrape Real Estate Property Data
Demonstration of the Webscraping Application (2:28)
Understanding the Problem and Loading the Webpage in Python (7:15)
Extracting Divisions of All Properties (11:34)
Extracting Addresses and Property Details (14:39)
Extracting Elements with no Unique Identifiers (12:07)
Saving the Extracted Data in CSV Files (8:27)
Crawling Through Webpages (17:15)
Application 8: Build a Data Analysis Dashboard
Intro to the Section (2:52)
Exploring the Data with Python (9:18)
Selecting Data (13:32)
Multiple Condition Filtering (7:58)
Time-based Filtering (9:55)
From Data To Information (11:00)
Average Daily Ratings Plot (14:43)
Average Ratings by Week (Downsampling) (9:42)
Average Rating by Month (2:16)
Average Rating by Month by Course (10:44)
What Day Are People the Happiest (9:45)
Other Types of Graphs (6:06)
Intro to JustPy-Highcharts (2:56)
Making a Simple JustPy Web App (12:24)
Making a HighCharts Graph (23:26)
Changing Graph Labels (2:59)
Making the Weekly Graph (5:20)
Average Rating by Course by Month (18:59)
Average and Number of Ratings Stream Graph (6:56)
Number of Ratings per Course Pie Chart (9:29)
Application 9: Build a Data Collector Web App
Demonstration of the Web Application (2:57)
Steps for Building a PostgreSQL Database-enabled Web Application (6:08)
Building the Front-end: HTML Part (14:52)
Building the Front-end: CSS Part (10:11)
Building the Back-end: Getting User Input (17:31)
Building the Back End: Creating the PostGreSQL Database Model (18:17)
Building the Back End: Storing User Data to the Database (19:14)
Building the Back End: Emailing Database Values Back to the User (10:59)
Building the Back End: Sending Statistics to Users (14:20)
Deploying the Web Application to a Live Server (29:38)
Bonus Lecture: User Downloads and Uploads (20:51)
Application 10: Student Project on Building a Geocoder Web Service
Demonstration of the Geocoding Web Service Application and Project Requirements (7:31)
Solution, Part 1 (16:21)
Solution, Part 2 (5:51)
End of the Course (0:47)
Summary
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock