Python for Everybody: The Ultimate Python 3 Bootcamp
4.5 (44 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
325 students enrolled

Python for Everybody: The Ultimate Python 3 Bootcamp

Learn Python 3 from scratch! This course includes beginner, intermediate and advanced subjects for every coding level.
4.5 (44 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
325 students enrolled
Created by Kalob Taulien
Last updated 6/2020
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9.5 hours on-demand video
  • 4 articles
  • 61 downloadable resources
  • 29 coding exercises
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn to use Python 3 professionally (Python 2 is no longer a supporter programming language)
  • Beginner, intermediate and advanced Python subjects
  • How to use Python on Windows, Mac and Linux
  • Learn Object Oriented Programming (OOP) with classes
  • Python best practices
  • How to create Python programs
  • Learn Python from A-Z and become a ninja Python coder
Course content
Expand all 94 lectures 09:22:22
+ Introduction
15 lectures 52:12

Learn the difference between Python 2 and Python 3, and why you don't need to learn Python 2 anymore.

Preview 02:00

Python 3 is used in every corner of software including websites, machine learning, A.I., video games, self driving cars, search engines, and pretty much everywhere else.

Preview 06:32

In this lesson we'll learn how to install Python 3.7 and Python 3.8 on Windows, MacOS and Linux.

Preview 01:57

Common questions throughout this course.

Course FAQs
For Windows Users (Please Read)
(Windows Only) Command Line Crash Course

Writing Python means you need to know some command line moves. We'll gently go over the most commonly used commands. Don't worry, it's not hard, I promise! 

Command Line Crash Course

There are a couple different ways to run your Python code on your computer. We'll explore how to do just that in this lesson.

Running Python Code
(Windows Only) Interactive Notebooks

This Python 3 course comes with interactive notebooks. Execute the code you see me writing, take notes beside the code, and safely experiment to learn Python in a hands-on way!

Interactive Notebooks

To get the most out of this course you'll probably want to download the code I've written in the videos. In this lesson I'll show you where to download the code.

Where to Download the Code

Python for Everybody attempts to utilize various ways of learning. Notes are a part of that learning journey for some students. In this lesson I'll show you how to take notes beside the interactive Python code!

Taking Notes Beside Code

For many, the reason you want to take a course is to have access to a dedicated teacher. But sometimes the teachers need help with well formatted code. Learn how to ask awesome questions to get awesome answers!

Asking Great Questions
Coding Support
+ Beginner-friendly Python
20 lectures 02:23:36

This is fancy talk for "math". Python 3 has a very simple way of performing simple math equations. Don't worry, this isn't calculus.

Preview 03:25
Coding Practice: Basic Arithmetic
1 question

Variables let you store "answers" in shortcuts with names. That's basically the entire lesson in one sentence. ¯\_(ツ)_/¯

Preview 06:03
Coding Practice: Variables
1 question
Quiz: Variables
3 questions

Python code does not look like your standard programming code (called syntax). Python uses indentation and prefers to not use curly brackets for everything. Let's take a closer look at this.

Formatting Code in Python

An introduction to Python data types. This is vital to know. In this lesson I'll briefly go over the most common data types you'll use every day before we dive into individual data types in their own videos.

Python Data Types

In Python some data types can be changed. Others are set forever until you either delete the variable or give it a new value. There's one data type in particular that's not what you think!

Mutable vs. Immutable
Quiz: Mutable vs. Immutable
2 questions

One. Ah ah ah. Two. Ah ah ah. Three. Ah ah ah. Numbers have been part of our lives since we were kids. Numbers are actually very important in programming (and in Python) these days.

Coding Practice: Numbers
1 question
Quiz: Numbers
2 questions

Let's learn about a "sequence". The first one is a string. Not like a knitting string.. but more like a sentence. Confused? This lesson will clarify everything.

Strings (Sequences)

Lists are another form of "sequence". We can loop through them and take an action based on every item in a list. Just like shopping for groceries... It's exactly like shopping for groceries, actually!

Lists (Sequences)

Strings, lists and other versions of sequences have this thing called an "index". It's a number that represents the position of a letter in a word, or the position of an item in a list.

Indexing And Slicing
Coding Practice: Indexing and Slicing
1 question

Strings are part of this thing called an "object". Objects have special features and pieces of data that come with them. This lesson will show you how to access that data and the special features.

String Properties And Methods
Coding Practice: String Properties and Methods
1 question

Accepting user input is part of every good program. This lesson will show you how to ask a user for input and how to use that input afterwards.

User Input
Quiz: Strings and User Input
6 questions

Being able to add variables to strings and print it out is very important in Python and Python debugging. This lesson will show you the old Python 3.5 way, and the newer Python 3.6+ way to format your sentences.

Print Formatting
Coding Practice: Print Formatting
1 question
Quiz: Print Formatting
2 questions

Lists let you store multiple items and preserve the order. Like a grocery list.. if you were trying to get in and out of the store as fast as possible.

Coding Practice: Lists
1 question

Dictionaries allow you store data inside of a variable, but you can use an "internal name" to reference it. Now you can group similar variables together into one larger variable. Hurray, cleaner code!

Coding Practice: Dictionaries
1 question

Tuples are almost identical to lists. Except you can't edit them. They are immutable lists.

Quiz: Lists, Dictionaries and Tuples
4 questions
Coding Practice: Tuples
1 question

A set is a unique Python data type that only allows you to store unique items, no duplicates allowed! But there's a catch... *cue scary music*

Coding Practice: Sets
1 question

Booleans are true or false. It's like 1 or 0. On or off. Yes or no. Actually you don't even need to watch this video, this description summed it up. ;)

Coding Practice: Booleans
1 question

A Python variable walks into a bar and asks a stranger "How's it going today?". The stranger turns to the variable and says, "None ya business!". Humour helps make learning more fun!


Files are incredibly important in programming languages. Python is no exception here. Learn how to work with files in this lesson.

Coding Practice: Files
1 question
Quiz: Sets, Booleans, NoneType and Files
3 questions

What's a programming course if you don't make a program right away? In this lesson you'll create a simple, but functional, Python program.

Your First Python Program
+ Intermediate Python
20 lectures 02:29:40

Comparison operators tell your program what to do based on certain conditions. For example: if you are hungry, eat food. Programs and Python work the exact same way.

Comparison Operators
Coding Practice: Comparison Operators
1 question

Python gives us lots of nice shortcuts so we don't need to damage our hands typing the same thing over and over again. Let's look at shortcut comparison operators.

Comparison Shortcuts

It's possible in Python to use multiple comparison operators at the same time.

Multiple Comparison Operators

Sometimes you need to check if something is a match against multiple answers. Chaining comparison operators in Python let's you check against multiple answers.

Chaining Operators Together
Quiz: Comparison Operators
6 questions

Loops let you perform an action over and over again. If you had a sandwich you wouldn't say "bite chew swallow, bite chew swallow, bite chew swallow". You'd say "bite chew swallow until you are done eating." Loops!

Introduction to Loops

This is a special type of loop that will cycle over all your items in an iterable (like a list or tuple!)

For Loops
Coding Practice: For Loops
1 question

Dictionaries aren't like lists or tuples, they can't be looped through as easily. But in Python it's not hard at all! Let's learn how to loop through key/value pairs.

Looping Through Dictionaries
Coding Practice: Looping Through Dictionaries
1 question

A while loop is a loop that will do a thing while a condition is true. This is true in most languages, including Python 3. but be careful, they have a dark side!

While Loops

Sometimes you want to loop over a list of items, perform some logic and if you found the answer you're looking for you want to end the loop, or skip to the next iteration.

Break and Continue
Coding Practice: Breaking out of Loops
1 question
Quiz: Loops
5 questions

All user input comes in as a string. But you can't compare apples to oranges, even if they're the same shape. Type casting lets us convert apples into oranges so we can make an accurate comparison.

Type Casting
Coding Practice: Type Casting
1 question
Quiz: Type Casting
3 questions

A bunch of misc. Python functions that will help you in your day-to-day coding.

Helpful Operators

I bet you never wanted to write a for loop in a single line of code? But once you learn how to do this, you'll never want to go back. List comprehensions are an AMAZING feature in Python.

List Comprehensions
Coding Practice: List Comprehensions
1 question

If you ever need to create a dictionary out of 2 lists (happens more than you'd think!) you might want to use a dictionary comprehension instead of writing all your dictionary key: value pairs manually.

Dictionary Comprehensions
Quiz: Comprehensions
3 questions

Functions are essential in every programming language, including Python. They seem hard at first, but they are a lot easier than most people think.

Coding Practice: Functions
1 question

Args and Kwargs.. you'll hear this a lot in Python. Learn what they are and how they work!

Args And Kwargs
Coding Practice: Args and Kwargs
1 question
Quiz: Functions
9 questions

Make notes in your code with "comments". It's good for future-you, and your co-workers. Comments you sane in large programs.


Ever need to apply a function to every item in a list? If so.. the Python map function is your friend.

Coding Practice: Map
1 question

Ever need to filter through items in a list? The filter function lets you filter data very easily. A good example is skipping through the Uber Eats menu and going straight to McDonalds. You filtered everything else out.

Coding Practice: Filter
1 question

Functions in a single line of code! (Seriously, it's really cool!)

Lambda Expressions

Sometimes your variables work in a function, sometimes they don't. What's up with that? This is a feature called scope in Python, and it's essential to know how it works.

Quiz: Map, Filter, Lambda and Scope
4 questions
+ Advanced Python
29 lectures 03:08:52

Object Oriented Programming. It's basically just grouping variables and functions together. Actually that's exactly what it is. No need to watch this video anymore ¯\_(ツ)_/¯

Welcome to OOP

Create your first Python class. We'll start small and work our way up to more advanced classes later.

Creating Your First Class
Coding Practice: Creating Your First Class
1 question

Classes have attributes. Not sure what a Python class attribute is? That means this lesson is for you.

Class Attributes
Coding Practice: Class Attributes
1 question

Class methods let you perform some kind super advanced crazy type of logic in a class. Actually I lied. A method in Python is basically just a function inside of a class. But it always takes at least one argument.

Class Methods
Coding Practice: Class Methods
1 question

Let's take a look at a more realistic OOP example.

Real Life OOP Example

It's not like nesting functions. It's more like layering functions. Only in this case, we're layering classes on top of each other.

Class Inheritance
Coding Practice: Class Inheritance
1 question

In advanced code that should be re-used you'll end up creating a blueprint for other classes to use. That's a class interface. Watch this lesson to learn how they work.

Class Interfaces

When you've inherited a class you can still access the original classes methods and execute them. Learn how in this lesson.

Super Function

Double underscore methods, or "magic" methods, are special methods built into Python. We can work with these and overwrite the default data, too.

Dunder Methods
Coding Practice: Dunder Methods
1 question
Quiz: Classes
8 questions

"Just download the package" said the other developer at your future Python job. But what is a package? Let's learn about them now.

Introduction to Packages

Python has one of the largest 3rd party ecosystems in the world. If you need something special, chances are someone has made an open source package already. Might as well use their code!

Installing 3rd Party Packages

Learn how to find 3rd party packages in Python.

Finding 3rd Party Packages

How to check if you have a package installed already.

Seeing Installed Packages
Quiz: Packages
2 questions

Modules. Files. Modules. Files. Modules... you get the point. A module is basically just a Python file you can use from another Python file.

Introduction to Modules

Learn how to create your own local package for your Python programs!

Creating a Package

Why does "Name and Main" sound like a steakhouse? It has nothing to do with steak. But it does have every thing to do with imports and executing file data.

Name and Main

Errors happen. You can NOT avoid them. It's a fact of life, your programs will have errors somewhere. But that doesn't mean your code should crash your program. Learn how to handle errors gracefully.

Errors and Exceptions

When you get an error, you need to "handle" it so your code doesn't crash.

Catching Exceptions
Quiz: Modules, Name and Main, Catching Exceptions
5 questions

Unit tests let you test your code. You should actually try to break your own code! Unit tests ensure your code consistently produces expected answers.

Unit Tests

In Python we can nest functions inside of functions.

Nested Functions

Python has this cool feature that lets you add extra functionality to an existing function. It's like a toggle for function features!

Coding Practice: Decorators
1 question

Generators. Like loops, but not quite. Learn what they are and how to create one!

Coding Practice: Generators
1 question
Quiz: Unit Tests, Nested Functions, Decorator and Generators
5 questions

The Python community is picky about good looking code. In this lesson I'll show you 3 common ways to keep your code clean and unpolluted.


Virtual environments keep your project code separated from other projects. This means you can install two versions of the same package and have no more worries about code conflicts!

Virtual Environments
Virtual Envs on Windows

Requirement files or common in Python. It's a list of all your packages that your 3rd party project needs to operate.

Requirement Files

A better way to write Python in your shell.

Interactive Python

Some people need to support multiple Python versions. This lesson will show you how you can do that.

Python Versions

Did you know you can run a local server to show your static files (HTML, CSS and JavaScript files)? Yep, it's built right into Python!

Local Server
+ Final Project: Create an Image Recognition Application
9 lectures 24:49

Let's take a look a the final projects when it's done.

Preview 00:51

It's a new Python project. It gets a new Python virtual environment.

Project: Python Environment

New project. New requirements. Here's what we need to get up and running.

Project: Required Packages

Machine learning "models" are a bunch of crazy math files with "stored knowledge". We can swap them out to get better results. But first, let's install our main model.

Project: Custom Machine Learning Model

It's 20 lines of codes. Seriously, that's it! 20 lines of Python can leverage machine learning and detect objects (and people) inside of images! We wrote longer classes in this course than that..

Project: The Code

Detect objects in images! This is our first set of results.

Project: First Detection

Detect more objects in images! This is our second set of results.

Project: Second Detection

Confidence in life is important for making decisions. Machine learning is the same. If someone said "I'm 17% certain you're working on a computer" you'd give that a second thought, no? Computers! 

Project: Confidence Matters

Was this project super interesting to you? Here's how you can continue learning more. You can even add object detection to a video! (That's like some NSA stuff..)

Project: How to Learn More
+ Summary
1 lecture 03:13

??? You're done ??? Here's where to go next.

  • You will need access to a computer with an internet connection.

Learn how to become a Python Programmer! 

Python is one of the most requested skills in software today. Whether you want to get into video game development, web development, data science, machine learning, internet of things or artificial intelligence... Python does it all! 

Welcome to Python for Everybody, the complete Python course for beginners, intermediate and advanced developers.

This course is more comprehensive than your standard Python course. Whether you have never programmed before in your entire life, know a little bit, or are an experience Python programmer already... this course have everything for you from beginner to advanced modules.

This course will teach you real-world Python.
At the end of this course, we won't make a useless Tic-Tac-Toe game... We'll create an Image Recognition Application using modern Python.

You will get hands on experience learning Python in this course. There are interactive notebooks where you can test the code I've written and safely experiment with Python... you can even write notes beside your interactive code! Python for Everybody provides these interactive notebooks, quizzes, and code tests to give you the best learning experience possible! It's the perfect way to learn!

Is this course for you?

If you've never written a line of code in your life, or you've written code in another programming language, or you already know some Python.. this course has everything for everybody. That's why it's called Python for Everybody! 

This course supports Windows, MacOS, and Linux.

Why learn Python 3?

Python is the #3 most popular programming language on Earth. There's no software that Python isn't involved in. Whether you want to get into Data Science, Machine Learning, Artificial Intelligence, Web Development, Video Games, Internet of Things or anything else, Python is the language you'll want to learn. In fact, Python is the only language that can "do it all".

This course is designed to set you up for success in every Python-related industry.

If you are new to programming, Python is the perfect language to learn first. Python is easy to read and write and the learning curve is very low making it the ideal first-language to learn. It's also incredibly powerful! That's why universities around the world are teaching Python.

If you're coming in from another language such as C or Java, you'll pick up on Python even easier! Python takes care of all the little things behind the scenes so you can focus on writing clean code that performs well.

Don't learn Python 2!

Python 2 is no longer maintained by the Python development team, and there are no more security updates. That means Python 2 is a dead language and everyone should now be using Python 3. (This course uses Python 3.7 and Python 3.8).

Python 2 was a great programming language, but there's no use in learning it since it's no longer supported at all. That's why this course focuses purely on modern Python.

Warning: Many other courses will try to teach you old Python 2 programming but it's 90% the same as Python 3 but is no longer supported. It's not worth your time to learn Python 2.

That's why this course focuses on Python 3 and uses modern Python 3.7 and Python 3.8.

What will you learn?

In this course we'll learn about variables, data structures, conditionals, loops, functions, Object Oriented Programming (OOP), classes, interfaces, the Python 3rd party package ecosystem, virtual environments, decorators, generators, try and except, and unit testing your code. Plus everything between the major learning points.

This course covers a wide variety of Python topics, such as:

  • Installing Python (with Windows, Mac and Linux Support)

  • Command Line Basics (with Windows, Mac and Linux Support)

  • Running Python Code

  • Data Structures and Types including

    • Strings

    • Booleans

    • Numbers

    • Dictionaries

    • Lists

    • Tuples

    • Sets

    • Files

  • Print Formatting (old and new methods)

  • For and While Loops

  • Basic Functions

  • Advanced Functions including:

    • Scoping

    • Args and Kwargs

    • Nesting Functions

    • Lambda Functions

  • Python Scope

  • Catching and Supporting Errors

  • Python Modules and Packages

  • Object Oriented Programming including:

    • Classes

    • Attributes and Custom Methods

    • Inheritance

    • Interfaces

  • Using 3rd Party Code

  • Python Best Practices

  • Unit Tests

  • Code Formatting and Clean Up

  • ... and much more!!

The Final Project

Throughout this course there are several mini projects such as making a small guessing game. That's a fun way to learn Python, but it's not practical for learning real-world Python. Python for Everybody will teach you real world uses of Python from a real world Python developer.

The final project is a machine learning application that can detect objects in photographs such as people, cars, bikes, cats, lamps, and more. Now that is a real-life Python project you can put on your resume.

Try this course risk free! 

Python for Everybody comes with a 30 day money back guarantee. If you are unhappy with this course simply get your money back. Plus you can keep the interactive notebooks — that's my way of saying thank you! for trying this course.

You have nothing to lose! Give this course a shot and start learning Python to advance your career and level up your programming knowledge.

Who this course is for:
  • Anybody who has never programmed before
  • Programmers learning Python that already know another language
  • Existing Python programmers who want to increase their skill level