Python Mega Course: Learn Python in 60 Days, Build 20 Apps

Learn Python completely in 60 days or less by building 20 real-world applications from web development to data science.

4.65 (66030 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
Python Mega Course: Learn Python in 60 Days, Build 20 Apps
317,878
students
52 hours
content
Apr 2024
last update
$189.99
regular price

What you will learn

Learn Python from beginner to advanced through real-world examples to transform your career

Learn to build industry-ready Python applications from scratch and deploy them for real users

Learn practical programming skills, tricks, and tools required by companies and which universities don't teach

Learn all major Python topics from machine learning and data science to web development

Learn OOP, APIs, SQL, Git, GUIs, Flask, Django, Bootstrap, ML, AI, and more

Build Python web apps, a movie recommendation system, data visualization dashboards, desktop GUIs, and more.

Why take this course?

Whether you're starting from scratch or looking to enhance your programming skills, this comprehensive course will take you from a beginner to a confident Python programmer in just 60 days. You can consume the content in the recommended timeframe of 60 days or less than that. It is up to you.

Below you can find the 20 applications you will build in the course. You can do all applications if you want to master Python completely or do only the ones you are interested in to focus on specific areas of Python.

1. To-do app (both as a desktop GUI and as a web app) covering all Python basics

2. Project showcase website built in Python to publish your Python projects

3. Task automation: Generating PDF receipts with Python

4. Extracting Excel data and creating reports

5. Automated Daily News Digest Emails with Python

6. Build an API serving historical weather data

7. Weather forecast data dashboard

8. Natural Language Processing of eBooks

9. Webcam monitoring email alert app

10. Web scraping of websites

11. Hotel booking app using Python Object-Oriented Programming (OOP)

12. Understanding programs coded by others: Inspecting the Mario game codebase

13. Student Management System Desktop GUI app with SQLite and PyQt

14. Student Management System Desktop GUI app with MySQL and PyQt

15. Intelligent chatbot with ChatGPT and PyQt

16. Job application web app with Flask

17. Job application web app with Django

18. Restaurant kitchen web app

19. Movie recommendation system

20. Build and publish a third-party Python package


The 20 applications have been carefully selected to cover all major Python areas including Python basics, task automation, data analysis and visualization, APIs, SQL databases, object oriented programming, desktop GUIs, web development, data science and machine learning, and even developing third-party packages with Python.

More Course Benefits

  • Comprehensive Learning: This course covers both the theoretical foundations and practical aspects of Python programming. You'll gain a deep understanding of Python concepts and apply them immediately to build 20 practical applications. From basic syntax to advanced topics like web development, data analysis, and machine learning, this course covers it all.

  • Hands-on Experience: Learning by doing is the core principle of this course. You'll dive right into coding from day one, building real-world applications alongside the instructor. With each project, you'll strengthen your skills, experiment with different techniques, and develop the confidence to code independently.

  • Portfolio Building: As you progress through the course, you'll create an impressive portfolio of 20 Python applications hosted on your GitHub account. This portfolio will serve as tangible evidence of your programming skills, showcasing your abilities to potential employers or clients.

  • Multimodal Learning Approach: Our proven multimodal learning approach ensures that you grasp Python concepts thoroughly. You'll benefit from video lectures, hands-on exercises, code reviews, quizzes, and independent projects. This comprehensive approach caters to different learning styles and ensures you truly understand and retain what you learn.

  • Career Preparation: Whether you're seeking a career change or aiming to level up in your current role, this course prepares you for success. You'll develop the skills needed to apply for junior developer positions confidently. Additionally, you'll learn important tools like Git and GitHub, essential for collaborating with other developers and showcasing your work to potential employers.

  • Flexibility and Lifetime Access: We understand that everyone has different schedules and commitments. That's why this course is designed to fit seamlessly into your routine. Study at your own pace, whether it's dedicating a few hours every day or working through modules during weekends. Plus, you'll have lifetime access to all course materials, ensuring you can revisit and reinforce your learning whenever you need to.

Are you ready to unlock the full potential of Python and become a proficient programmer? Enroll today and join thousands of students who have already transformed their lives with Python.

Content

Introduction

Course Introduction
How to Contact Your Instructor
Preview of the 10 Apps
The Tools You Need
Installing Python 3 and an IDE (Windows, Mac, and Linux)

The Basics: Small Program

Your First Python Code
Your First Python Program
FAQs
Summary

The Basics: Data Types

Variables
Your First Python Exercise (E)
Assign Multiple Values and Print (E)
Simple Types: Integers, Strings, and Floats
Create Integers, Strings, and Floats (E)
Sum Up Numbers (E)
List Types
Ranges
Create List (E)
Create Complex List (E)
Type Attributes
Did You Know?
How to Find Out What Code You Need
Bonus: Steps of Learning Python
Calculate Maximum (E)
Count Values (E)
Modify String (E)
Dictionary Types
Did You Know?
Create Dictionary (E)
Tuple Types
Create Tuple (E)
Create Complex Dictionary (E)
How to Use Datatypes in the Real World?
Did You Know?
Summary: Integers, Floats, Lists, Dictionaries, Tuples, dir, help

The Basics: Operations with Data Types

Python Shell and Terminal Tip
More Operations with Lists
Append Item to List (E)
Remove Item from List (E)
Remove Three Items From List (E)
Accessing List Items
Access Item (E)
Access Items (E)
Access and Append (E)
Accessing List Slices
Accessing Items and Slices with Negative Indexes
Accessing Characters and Slices in Strings
Accessing and Slicing Lists and Strings
Slicing a List, 2nd to 4th (E)
Slicing a List, First Three (E)
Slicing a List, Last Three (E)
Accessing Items in Dictionaries
Summary: Positive/Negative Indexes, Slicing

The Basics: Functions and Conditionals

Creating Your Own Functions
Lengther (E)
Square Area (E)
Volume Converter (E)
Print or Return?
Intro to Conditionals
If Conditional Example
Bonus Code: Using "and" and "or" in a Conditional
Conditional Explained Line by Line
Conditionals Quiz
More on Conditionals
Password Controller (E)
Warm or Cold (E)
Elif Conditionals
White Space
Hot, Warm, Cold (E)
Summary: Functions and Conditionals

The Basics: Processing User Input

User Input
String Formatting
String Formatting with Multiple Variables
String Formatting (E)
String Formatting and Uppercase (E)
Summary: Processing User Input

The Basics: Loops

For Loops: How and Why
Loop Over Colors (E)
Loop Over Big Colors (E)
Loop Over Integer Colors (E)
Loop Over Int and Big Colors (E)
For Loop Over a Function
Did You Know?
Looping Through a Dictionary
Bonus Code: Dictionary Loop and String Formatting
Loop Over Dictionary and Format (E)
Loop Over Dictionary and Replace (E)
While Loops: How and Why
While Loop Example with User Input
While Loops
While Loops with Break and Continue
Summary: Loops

Putting the Pieces Together: Building a Program

Problem Statement
Approaching the Problem
Building the Maker Function
Constructing the Loop
Making the Output User-Friendly

List Comprehensions

Simple List Comprehension
List Comprehension with If Conditional
Only Numbers (E)
Only Positive Numbers (E)
List Comprehension with If-Else Conditional
Zeros Instead (E)
Convert and Sum Up (E)
Summary: List Comprehensions

More on Functions

Functions with Multiple Arguments
Did You Know?
Function with Multiple Parameters (E)
Default and Non-default Parameters and Keyword and Non-keyword Arguments
Functions with an Arbitrary Number of Non-keyword Arguments
Average Function (E)
Indefinite Number of Strings Processed (E)
Functions with an Arbitrary Number of Keyword Arguments
Indefinite Number of Keyword Arguments (E)
Summary: More on Functions

File Processing

The Concept of Processing Files in Python
Reading Text From a File
Read Text From File and Print (E)
File Cursor
Closing a File
Reading and Processing Text (E)
File Processing Inside Function (E)
Opening Files Using "with"
Different Filepaths
Writing Text to a File
Write Snail (E)
Write First 90 (E)
Appending Text to an Existing File
Read and Append (E)
Copy n-times (E)
Summary: File Processing

Imported Modules

Builtin Modules
Standard Python Modules
Third-Party Modules
Third-Party Module Example
Summary: Imported Modules

Application 1: Build an Interactive English Dictionary

Note
Interactive English Dictionary - How The Output Will Look Like
The Data Source
Loading JSON Data
Returning the Definition of a Word
Taking Into Account Bad Words
Implementing Case Sensitivity
Similarity Ratio Between Two Words
Best Matches out of a List of Words
Recommending the Best Match
Confirmation from the User
Optimizing the Final Output
Version 1.1 (E)
Version 1.1: Code
Version 1.2 (E)
Version 1.2: Code

Project Exercise with Python and MySQL: Interactive English Dictionary

Intro to the App
Making the App
More SQL Statements

Data Analysis with Pandas

What is Pandas?
Installing Pandas
Getting Started with Pandas
Getting Started with Jupyter Notebooks
Loading CSV Files
Exercise: Loading JSON Files
Solution
Note on Loading Excel Files
Loading Excel Files
Loading TXT Files
Set Header Row
Set Column Names
Set Index Column
Indexing and Slicing
Deleting Columns and Rows
Updating and Adding new Columns and Rows
Note on Nominatim
Example: Geocoding Addresses with Pandas and Geopy

Numpy

What is Numpy?
Installing OpenCV
Convert Images to Numpy Arrays
Indexing, Slicing, and Iterating Numpy Arrays
Stacking and Splitting Numpy Arrays

Application 2: Create Webmaps with Python and Folium

Web Map - How The Output Will Look Like
The Basemap
Note
Adding Points
Adding Multiple Points
Adding Points from Files
Popup Windows on Map
HTML on Popups
Color Points
Add and Style Points (Practice)
Tip: Add and Style Points
Solution
GeoJson Data
Adding a GeoJson Polygon Layer
Choropleth Map
Layer Control Panel

Fixing Programming Errors

Syntax Errors
Runtime Errors
Errors
How to Fix Difficult Errors
Good Programming Questions
Error Handling

Application 3: Build a Website Blocker

Website Blocker - How The Output Will Look Like
Application Architecture
Setting up the Script
Setting up the Infinite Loop
Implementing the First Part
Implementing the Second Part
The any() function
Scheduling the Python Program on Windows
Scheduling the Python Program on Mac and Linux
Scheduling a Python Program on a Server

Application 4: Build a Personal Website with Python and Flask

Personal Website - How The Output Will Look Like
Your First Website
HTML Templates
Navigation Menu
Note on Browser Caching
CSS Styling
Creating a Python Virtual Environment
How to Install Git
Deploying the Website to a Live Server
Maintaining the Live Website
Troubleshooting
Congratulations!

Graphical User Interfaces with Tkinter

Introduction to Tkinter
Setting up a GUI with Widgets
Connecting GUI Widgets with Callback Functions
Create a Multi-widget GUI (Practice)
Solution

Interacting with Databases

Introduction to "Python with Databases"
Connecting and Inserting Data to SQLite via Python
Selecting, Inserting, Deleting, and Updating SQLite Records
Introduction to PostgreSQL Psycopg2
Selecting, Inserting, Deleting, and Updating PostgreSQL Records
Querying data from a MySQL database

Application 5: Build a Desktop Database Application

Desktop Database App - How The Output Will Look Like
User Interface Design
Frontend Interface
Backend
Connecting the Frontend to the Backend, Part 1
Connecting the Frontend to the Backend, Part 2
Fixing the Bug (Practice)
Solution
Creating a Standalone Executable Version of the Program

Object Oriented Programming

Object Oriented Programming Explained
Turning this Application into OOP Style, Part 1
Turning this Application into OOP Style, Part 2
Creating a Bank Account Object
Inheritance
OOP Glossary
GUI in OOP Design (Practice)
Solution

Python for Image and Video Processing with OpenCV

Introduction
Installing the Library
Loading, Displaying, Resizing, and Writing Images
Batch Image Resizing (Practice)
Solution
Solution with Explanations
Face Detection
Capturing Video

Application 6: Build a Webcam Motion Detector

Webcam Motion Detector - How The Output Will Look Like
Detecting Webcam Objects
Capturing Motion Time

Interactive Data Visualization with Bokeh

Introduction to Bokeh
Installing Bokeh
Your First Bokeh Plot
Plotting Triangles and Circle Glyphs (Practice)
Solution
Using Bokeh with Pandas
Plotting Education Data (Practice)
Solution
Note on Loading Excel Files
Plot Properties
Plotting Weather Data (Practice)
Solution
Visual Attributes
Time-series Plots
More Visualization Examples with Bokeh
Plotting Time Intervals of the Motion Detector
Hover Tool Implementation

Webscraping with Python Beautiful Soup

Section Introduction
The Concept Behind Webscraping
Request Headers
Webscraping Example

Application 7: Scrape Real Estate Property Data from the Web

Scraped Website Data - How The Output Will Look Like
Request Headers
Loading the Webpage in Python
Extracting "div" Tags
Extracting Addresses and Property Details
Extracting Elements without Unique Identifiers
Saving the Extracted Data in CSV Files
Crawling Through Webpages

Application 8: Build a Web-based Financial Graph

Web-based Financial Graph - How The Output Will Look Like
Downloading Datasets with Python
Stock Market Data
Stock Market Data Candlestick Charts
Candlestick Charts with Bokeh Quadrants
Candlestick Charts with Bokeh Rectangles
Candlestick Segments
Stylizing the Chart
The Concept Behind Embedding Bokeh Charts in a Flask Webpage
Note
Embedding the Bokeh Chart in a Webpage
Deploying the Chart Website to a Live Server

Application 9: Build a Data Collector Web App with PostGreSQL and Flask

Data Collector Web App - How The Output Will Look Like
PostGreSQL Database Web App with Flask: Steps
Frontend: HTML Part
Frontend: CSS Part
Backend: Getting User Input
Backend: The PostGreSQL Database Model
Backend: Storing User Data to the Database
Backend: Emailing Database Values Back to the User
Backend: Sending Statistics to Users
Deploying the Web Application to a Live Server
Bonus Lecture: Implementing Download and Upload in your Web App

Application 10: Project Exercise on Building a Geocoder Web Service

Student Project - How The Output Should Look Like
Solution, Part 1
Solution, Part 2
End of the Course

Legacy Exercises

Variables (Practice)
Get Variable Value (Practice)
Math Operators (Practice)
Simple Sum (Practice)
Lists (Practice)
Indexing (Practice)
Slicing (Practice)
More on Indexing (Practice)
More on Slicing (Practice)
List Indexing (Practice)
Append to List (Practice)
Remove from List (Practice)
Append from List to List (Practice)
Concatenate List Items (Practice)
Create Dictionary (Practice)
Create Function (Practice)
Exponential Function (Practice)
Sum up Function (Practice)
Function Output (Practice)
Function with Default Parameters (Practice)

Offers for my Other Python Courses

Bonus Lecture

Screenshots

Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Screenshot_01Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Screenshot_02Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Screenshot_03Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Screenshot_04

Our review

--- **Overview of the Course** The course has received an overwhelmingly positive response from recent reviews, with a global rating of 4.65. Students have commended the course for its comprehensive and practical approach to learning Python, particularly highlighting the real-world applications and the structured daily format that allows for effective learning and understanding. The course is praised for its clarity, didactic methodology, and the variety of projects covered, which cater to both beginners and those with previous programming knowledge. **Pros:** - **Well-Structured Content:** The course follows a meticulous daily format that enhances comprehension through practical exercises at the end of each session, such as tests and bug fixing tasks. - **Clear and Concise Instruction:** Instructor Ardit is frequently commended for his ability to explain complex concepts in a simple and understandable manner. - **Real-World Applications:** Students appreciate the course's focus on practical, real-world use cases, which align with their professional goals like data analysis and algorithmic trading. - **Comprehensive Coverage:** The material is taught comprehensively without overcomplication, making it suitable for all skill levels. - **Effective Learning Pace:** The course's pace is described as excellent, with a balance of theory and practice that keeps students engaged and learning effectively. - **Variety of Projects:** Students find the range of topics both interesting and beneficial, providing them with a broader understanding of Python's capabilities. - **Resourceful Teaching:** The instructor not only delivers technical knowledge but also shares additional resources and insights that extend beyond the course material. - **Motivational Approach:** The course layout and the "Programming Tool/Concept of the Day" segments are motivational and encouraging, fostering a positive learning environment. - **Immediate Practical Application:** Unlike other courses, this one has students writing code from early on, which is seen as a significant advantage for practical understanding. - **Versatile Learning Style:** The course content is engaging at different speeds, with some students successfully following along at double speed. - **Highly Recommended:** Many students highly recommend the course and express gratitude for its impact on their learning journey and development of programming skills. **Cons:** - **Intensity of Content:** Some students find the pace towards the end of the course to be a bit rapid, feeling that it moves too quickly, which might leave some concepts feeling underexplained. - **Potential for Overlap with Prior Knowledge:** For those who already have programming experience, some sections may feel repetitive or less relevant. **Course Highlights:** - **Interactive and Engaging:** The course's format encourages active participation and learning through practical exercises. - **Teacher Excellence:** Ardit is recognized not only for teaching skills but also for fostering a developer mindset. - **Broad Appeal:** Suitable for both beginners and those looking to deepen their Python knowledge, the course covers a wide range of topics. - **Fun and Rewarding Experience:** Students report enjoying the course and finding it addictive due to its ability to teach effectively within a short period. In summary, this course is an excellent resource for anyone looking to learn Python in a structured, comprehensive, and practical manner. The positive feedback from students underscores its effectiveness and the engaging teaching style of Ardit. Whether you're new to programming or looking to sharpen your Python skills, this course is highly recommended.

Coupons

DateDiscountStatus
9/21/202285% OFF
expired
12/3/202288% OFF
expired
4/27/202385% OFF
expired
6/21/202385% OFF
expired
8/14/202385% OFF
expired
12/9/202385% OFF
expired

Charts

Price

Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Price chart

Rating

Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Ratings chart

Enrollment distribution

Python Mega Course: Learn Python in 60 Days, Build 20 Apps - Distribution chart
692188
udemy ID
12/8/2015
course created date
7/31/2019
course indexed date
561nano
course submited by