Python Video Courses

Gain practical, real-world Python skills with our library of Python video courses.


Our tutorials are created, curated, and vetted by a community of expert Pythonistas. At Real Python you'll get the trusted resources you need on your path to Python mastery.

With new content published weekly, you'll always find something new to boost your programming skills.

You can mark individual lessons as completed or in-progress and learn at your own comfortable pace. Bookmark interesting lessons and review them later for optimum long-term retention.

Not sure where to start? Check out our "Welcome to Real Python" onboarding course where you’ll get an overview of the features of the Real Python platform.

— Now Available —

Python's raise: Effectively Raising Exceptions in Your Code

Using raise for Effective Exceptions

In this video course, you'll learn how to raise exceptions in Python, which will improve your ability to efficiently handle errors and exceptional situations in your code. This way, you'll write more reliable, robust, and maintainable code.

Generate Beautiful QR Codes With Python

Generating QR Codes With Python

Darren Jones

Darren Jones 11 Lessons 40m
intermediate

In this video course, you'll learn how to use Python to generate QR codes, from your standard black-and-white QR codes to beautiful ones with your favorite colors. You'll learn how to format QR codes, rotate them, and even replace the static background with moving images.

PyTorch vs Tensorflow for Your Python Deep Learning Project

Python Deep Learning: PyTorch vs Tensorflow

PyTorch vs Tensorflow: Which one should you use? Learn about these two popular deep learning libraries and how to choose the best one for your project.

Finding Python Easter Eggs Title

Finding Python Easter Eggs

Philipp Acsany

Philipp Acsany 14 Lessons 21m
basics

Python has its fair share of hidden surprises, commonly known as Easter eggs. From clever jokes to secret messages, these little mysteries are often meant to be discovered by curious geeks like you!

Data Management With Python, SQLite, and SQLAlchemy

SQLite and SQLAlchemy in Python: Move Your Data Beyond Flat Files

In this video course, you'll learn how to store and retrieve data using Python, SQLite, and SQLAlchemy as well as with flat files. Using SQLite with Python brings with it the additional benefit of accessing data with SQL. By adding SQLAlchemy, you can work with data in terms of objects and methods.

Python Basics: Dictionaries

Python Basics Exercises: Dictionaries

Philipp Acsany

Philipp Acsany 24 Lessons 49m
basics python

One of the most useful data structures in Python is the dictionary. In this video course, you’ll practice working with Python dictionaries, see how dictionaries differ from lists and tuples, and define and use dictionaries in your own code.

Asynchronous Tasks With Django and Celery

Creating Asynchronous Tasks With Celery and Django

In this video course, you'll learn how to integrate Celery and Django using Redis as a message broker. You'll refactor the synchronous email sending functionality of an existing Django app into an asynchronous task that you'll run with Celery instead.

Python Basics: Installing Packages With pip

Python Basics Exercises: Installing Packages With pip

Philipp Acsany

Philipp Acsany 18 Lessons 36m
basics python

In this Python Basics Exercises video course, you'll practice installing packages with pip. You'll also practice creating virtual environments, making lists of requirements, and recreating a development environment.

The Python Rich Package: Unleash the Power of Console Text

Unleashing the Power of the Console With Rich

Rich is a powerful library for creating text-based user interfaces (TUIs) in Python. It enhances code readability by pretty-printing complex data structures and adds visual appeal with colored text, tables, animations, and more.

Build Conway's Game of Life With Python

Create Conway's Game of Life With Python

In this video course, you'll use Python to build Conway's Game of Life. You'll implement a user-friendly command-line interface (CLI) with several options that will allow you to run the game using different life patterns and configurations.

Python Basics: Lists and Tuples

Python Basics Exercises: Lists and Tuples

Martin Breuss

Martin Breuss 31 Lessons 1h 30m
basics python

In this Python Basics Exercises video course, you'll practice defining and manipulating Python lists and tuples in your code. By reinforcing your skills, you'll gain confidence in using lists and tuples in your programming projects.

Build Enumerations of Constants With Python's Enum

Building Enumerations With Python's enum

In this video course, you'll discover the art of creating and using enumerations of logically connected constants in Python. To accomplish this, you'll explore the Enum class and other associated tools and types from the enum module from the Python standard library.

Python Basics: Lists and Tuples

Python Basics: Lists and Tuples

Martin Breuss

Martin Breuss 30 Lessons 1h 47m
basics python

In this video course, you'll learn about Python lists and tuples, including how to define and manipulate them in your code. By the end of the course, you'll be ready to effectively use lists and tuples in your programming projects.

Build a Tic-Tac-Toe Game Engine With an AI Player in Python

Create a Tic-Tac-Toe Python Game Engine With an AI Player

In this video course, you'll create a universal game engine in Python for tic-tac-toe with two computer players, one of which will be an AI player using the powerful minimax algorithm. You'll give your game library a text-based graphical interface and explore two front ends.

Python Basics: Functions and Loops

Python Basics Exercises: Functions and Loops

Philipp Acsany

Philipp Acsany 26 Lessons 55m
basics python

In this Python Basics Exercises course, you'll practice creating user-defined functions that you can execute multiple times in your code. Additionally, you'll gain experience in repeating code using for and while loops.

Python's urllib.request for HTTP Requests

HTTP Requests With Python's urllib.request

In this video course, you'll explore how to make HTTP requests using Python's handy built-in module, urllib.request. You'll try out examples and go over common errors, all while learning more about HTTP requests and Python in general.

Python Basics: Reading and Writing Files

Python Basics Exercises: Reading and Writing Files

In this video tutorial, you'll practice transferring data between your Python programs and external software by reading and writing files. Through exercises, you'll master the art of reading and writing information saved in CSV file format, which is extensively used for exchanging tabular data.

Python Basics: Strings and String Methods

Python Basics Exercises: Strings and String Methods

Martin Breuss

Martin Breuss 33 Lessons 1h 11m
basics python

In this Python Basics Exercises course, you'll review how to work with the string data type. You'll practice manipulating strings with methods and formatting them for printing.

How to Get and Use the Current Time in Python

How to Get the Current Time in Python

In this video course, you'll be getting the current time in Python. You'll get your hands on a datetime object that represents the current time. You'll see how to format it according to international standards, and you'll even check out how computers represent time.

Advent of Code: Solving Puzzles With Python

Advent of Code: Solving Puzzles With Python

Advent of Code is an online advent calendar that shares new programming puzzles each day from December 1 to the 25. In this Code Conversation, you'll learn why solving programming puzzles can be beneficial and how you can get started with Advent of Code using Python.

Python Basics: Modules and Packages

Python Basics Exercises: Modules and Packages

Philipp Acsany

Philipp Acsany 16 Lessons 38m
basics python

In this video course, you'll practice separating your code into modules, using the import statement to access another module's namespace, and creating Python packages.

Python Basics: Modules and Packages

Python Basics: Modules and Packages

Philipp Acsany

Philipp Acsany 21 Lessons 39m
basics python

In this Python Basics video course, you'll learn how to build an application by putting related code into separate files called modules. You'll also use the import statement to use modules in another file.

Python Basics: Numbers and Math

Python Basics Exercises: Numbers and Math

In this Python Basics Exercises course, you'll practice the math that you need for your Python programming journey. This includes integers and floating-point numbers, arithmetic operators, and string formatting for numbers.

Discover bpython: Python REPL With IDE-Like Features

Using the bpython Enhanced REPL

In this video course, you'll learn about bpython, an alternative Python REPL that brings code suggestions and many other IDE-like features to the terminal. Once you discover how much bpython can improve your productivity, you'll never want to return to using the vanilla Python REPL again.

Python Basics: Building Systems With Classes

Python Basics Exercises: Building Systems With Classes

Martin Breuss

Martin Breuss 39 Lessons 2h 9m
basics python

In this Python Basics Exercises course, you'll review how to work with classes to build complex systems in Python. By practicing composing classes, inheriting from other classes, and overriding class behavior, you'll harness the power of object-oriented programming (OOP).

Python Basics: Object-Oriented Programming

Python Basics Exercises: Object-Oriented Programming

Martin Breuss

Martin Breuss 13 Lessons 31m
basics python

In this Python Basics Exercises course, you'll review OOP, or object-oriented programming. You'll practice creating classes, using classes to create new objects, and instantiating classes with attributes.

Python's min() and max(): Find Smallest and Largest Values

Using Python's min() and max()

Darren Jones

Darren Jones 13 Lessons 45m
basics python

In this video course, you'll learn how to use Python's built-in min() and max() functions to find the smallest and largest values. You'll also learn how to modify their standard behavior by providing a suitable key function. Finally, you'll code a few practical examples of using min() and max().

Cool New Features in Python 3.12

What's New in Python 3.12

In this video course, you'll explore the new features that Python 3.12 brings to the table. These include improved f-strings, better error messages, changes to CPython internals, additions to static typing, and more.

Python Basics: Conditional Logic & Control Flow

Python Basics Exercises: Conditional Logic and Control Flow

Martin Breuss

Martin Breuss 37 Lessons 1h 38m
basics python

In this Python Basics Exercises course, you'll review how to use conditional logic to write programs that perform different actions based on different conditions. Paired with functions and loops, conditional logic allows you to write complex programs that can handle many different situations.

SOLID Principles: Improve Object-Oriented Design in Python

Design and Guidance: Object-Oriented Programming in Python

In this video course, you'll learn about the SOLID principles, which are five well-established standards for improving your object-oriented design in Python. By applying these principles, you can create object-oriented code that is more maintainable, extensible, scalable, and testable.

Inheritance and Internals: Object-Oriented Programming in Python

Inheritance and Internals: Object-Oriented Programming in Python

In this video course, you'll learn about the various types of inheritance that you can use to write object-oriented code in Python. These include class inheritance, multilevel inheritance, and multiple inheritance, along with special methods and abstract base classes.

Python Classes: The Power of Object-Oriented Programming

Class Concepts: Object-Oriented Programming in Python

Python uses object-oriented programming to group data and associated operations together into classes. In this video course, you'll learn how to write object-oriented code with classes, attributes, and methods.

Build a Wordle Clone With Python and Rich

Create a Python Wordle Clone With Rich

Darren Jones

Darren Jones 19 Lessons 1h 9m
basics projects

In this step-by-step project, you'll build your own Wordle clone with Python. Your game will run in the terminal, and you'll use Rich to ensure your word-guessing app looks good. Learn how to build a command-line application from scratch and then challenge your friends to a wordly competition!

How to Replace a String in Python

Replacing a String in Python

In this video course, you'll learn how to remove or replace a string or substring. You'll go from the basic string method .replace() all the way up to a multi-layer regex pattern using the sub() function from Python's re module.

Image Processing With the Python Pillow Library

Process Images Using the Pillow Library and Python

Darren Jones

Darren Jones 15 Lessons 59m
intermediate

In this video course, you'll learn how to use the Python Pillow library to deal with images and perform image processing. You'll also explore using NumPy for further processing, including to create animations.

What Does if __name__ == "__main__" Do in Python?

What Does if __name__ == "__main__" Mean in Python?

In this video course, you'll learn all about Python's name-main idiom. You'll learn what it does in Python, how it works, when to use it, when to avoid it, and how to refer to it.

Reverse Strings in Python: reversed(), Slicing, and More

Reversing Strings in Python

In this video course, you'll learn how to reverse strings in Python by using available tools such as reversed() and slicing operations. You'll also learn how to build reversed strings by hand.

Socket Programming in Python Part 1: Handling Connections

Socket Programming in Python Part 1: Handling Connections

In this video course, you'll learn how to build a socket server and client with Python. Along the way, you'll get to know the main functions and methods in Python's socket module, and you'll implement a multi-connection server and client.

Python Folium: Create Web Maps From Your Data

Creating Web Maps From Your Data With Python Folium

You'll learn how to create web maps from data using Folium. The package combines Python's data-wrangling strengths with the data-visualization power of the JavaScript library Leaflet. In this video course, you'll create and style a choropleth world map showing the ecological footprint per country.

Python's filter(): Extract Values From Iterables

Filtering Iterables With Python

In this video course, you'll learn how Python's filter() works and how to use it effectively in your programs. You'll also learn how to use list comprehension and generator expressions to replace filter() and make your code more Pythonic.

Jinja Templating Engine

Jinja Templating

With Jinja, you can build rich templates that power the front end of your web applications. But you can use Jinja without a web framework running in the background. Anytime you want to create text files with programmatic content, Jinja can help you out.

Recursion in Python: An Introduction

Recursion in Python

A recursive function is one that calls itself. In this video course, you'll see what recursion is, how it works in Python, and under what circumstances you should use it.

Python Basics: Reading and Writing Files

Python Basics: Reading and Writing Files

Bartosz Zaczyński

Bartosz Zaczyński 13 Lessons 1h 10m
basics python

In this video course, you'll learn how to move data back and forth between your Python programs and external software by reading and writing files. You'll practice reading and writing data stored in the CSV file format, one of the most widely supported file formats for transferring tabular data.

Build a Maze Solver in Python Using Graphs

Mazes in Python: Build, Visualize, Store, and Solve

Darren Jones

Darren Jones 33 Lessons 2h 28m
intermediate projects

In this video course, you'll use object-oriented programming and scalable vector graphics (SVG) to build and visualize your maze. You'll then transform the maze into a traversable weighted graph and solve it with a graph search algorithm in the NetworkX library.

How to Get the First Match From a Python List or Iterable

Getting the First Match From a Python List or Iterable

Darren Jones

Darren Jones 7 Lessons 28m
intermediate

In this video course, you'll learn about the best ways to get the first match from a Python list or iterable. You'll look into two different strategies, for loops and generators, and compare their performance. Then you'll finish up by creating a reusable function for all your first matching needs.

The k-Nearest Neighbors (kNN) Algorithm in Python

Using k-Nearest Neighbors (kNN) in Python

In this video course, you'll learn all about the k-nearest neighbors (kNN) algorithm in Python, including how to implement kNN from scratch. Once you understand how kNN works, you'll use scikit-learn to facilitate your coding process.

Python Metaclasses and Metaprogramming

Metaclasses in Python

Metaclasses are an important but mysterious behind-the-scenes mechanism for instantiating classes in Python. In this video course, you'll learn how Python's metaclasses work in object-oriented programming.

The Python Standard REPL: Try Out Code and Ideas Quickly

Getting the Most Out of the Python Standard REPL

Darren Jones

Darren Jones 11 Lessons 56m
basics tools

In this video course, you'll learn how to use the Python standard REPL (Read-Eval-Print Loop) to run your code interactively. This tool will allow you to test new ideas, explore and experiment with new tools and libraries, refactor and debug your code, try out examples, and more.

How to Publish an Open-Source Python Package to PyPI

Publishing Python Packages to PyPI

In this video course, you’ll learn how to create a Python package for your project and how to publish it to PyPI, the Python Package Index. Quickly get up to speed on everything from naming your package to configuring it using setup.cfg.

Python's assert: Debug and Test Your Code Like a Pro

Using Python's assert to Debug and Test Your Code

In this course, you'll learn how to use Python's assert statement to document, debug, and test code in development. You'll learn how assertions might be disabled in production code, so you shouldn't use them to validate data. You'll also learn about a few common pitfalls of assertions in Python.

Python Basics: Installing Packages With pip

Python Basics: Installing Packages With pip

Philipp Acsany

Philipp Acsany 11 Lessons 42m
basics python

Python's standard library includes a whole buffet of useful packages, but sometimes you need to reach for a third-party library. That's where pip comes in handy. In this video course, you'll learn how to pip install packages.

OrderedDict vs dict in Python: The Right Tool for the Job

Using OrderedDict in Python

In this video course, you'll learn what Python's OrderedDict is and how to use it in your code. You'll also learn about the main differences between regular dictionaries and ordered dictionaries.

How to Check if a Python String Contains a Substring

Check if a Python String Contains a Substring

In this video course, you'll learn the best way to check whether a Python string contains a substring. You'll also learn about idiomatic ways to inspect the substring further, match substrings with conditions using regular expressions, and search for substrings in pandas.

YAML: The Missing Battery in Python

YAML: Python's Missing Battery

In this video course, you'll learn about working with YAML in Python. By the end of it, you'll know about the available libraries, their strengths and weaknesses, and the advanced and potentially dangerous features of YAML.

Python's sum(): The Pythonic Way to Sum Values

Summing Values the Pythonic Way With sum()

Darren Jones

Darren Jones 8 Lessons 29m
basics python

In this video course, you'll learn how to use Python's sum() function to add numeric values together. You'll also learn how to concatenate sequences, such as lists and tuples, using sum().

Documenting Python Projects With Sphinx and Read the Docs

Documenting Python Projects With Sphinx and Read the Docs

In this video series, you'll create project documentation from scratch using Sphinx, the de facto standard for Python. You'll also hook your code repository up to Read The Docs to automatically build and publish your code documentation.

Python's zipfile: Manipulate Your ZIP Files Efficiently

Manipulating ZIP Files With Python

In this video course, you'll learn how to manipulate ZIP files using Python's zipfile module from the standard library. Through hands-on examples, you'll learn how to read, write, compress, and extract files from your ZIP files quickly.

Write Pythonic and Clean Code With namedtuple

Writing Clean, Pythonic Code With namedtuple

In this video course, you'll learn what Python's namedtuple is and how to use it in your code. You'll also learn about the main differences between named tuples and other data structures, such as dictionaries, data classes, and typed named tuples.

Using the Terminal on Windows

Using the Terminal on Windows

Philipp Acsany

Philipp Acsany 20 Lessons 35m
basics

In this Code Conversation video course, you'll learn how to use the terminal on Windows. You'll navigate the file system with Philipp and Ian and perform common tasks like creating files and folders. If you've never used the terminal before, then this video course will help you get started.

Getters and Setters: Manage Attributes in Python

Getters and Setters in Python

In this video course, you'll learn what getter and setter methods are, how Python properties are preferred over getters and setters when dealing with attribute access and mutation, and when to use getter and setter methods instead of properties in Python.

Python Basics: Building Systems With Classes

Python Basics: Building Systems With Classes

Ian Currie

Ian Currie 9 Lessons 34m
basics python

In this video course, you'll learn how to work with classes to build complex systems in Python. By composing classes, inheriting from other classes, and overriding class behavior, you'll harness the power of object-oriented programming (OOP).

Using the Terminal on Linux

Using the Terminal on Linux

Philipp Acsany

Philipp Acsany 19 Lessons 39m
basics

In this Code Conversation video course, you'll learn how to use the terminal on Linux. You'll navigate the file system with Philipp and Geir Arne and perform common tasks like creating files and folders. If you've never used the terminal before, then this video course will help you get started.

Python Basics: Object-Oriented Programming

Python Basics: Object-Oriented Programming

Ian Currie

Ian Currie 16 Lessons 52m
basics python

In this video course, you'll get to know OOP, or object-oriented programming. You'll learn how to create a class, use classes to create new objects, and instantiate classes with attributes.

Python Basics: File System Operations

Python Basics Exercises: File System Operations

Martin Breuss

Martin Breuss 23 Lessons 1h 11m
basics python

In this Python Basics Exercises course, you'll review how to use Python to work with your computer's file system. Then, you'll tackle a coding challenge to further develop your skills.

Using the Terminal on macOS Title Image

Using the Terminal on macOS

Philipp Acsany

Philipp Acsany 16 Lessons 30m
basics

In this Code Conversation video course, you'll learn how to use the terminal on macOS. You'll navigate the file system with Philipp and Martin and perform common tasks like creating files and folders. If you've never used the terminal before, then this video course will help you get started.

Build a Mobile Application With the Kivy Python Framework

Build Cross-Platform GUI Apps With Kivy

In this video course, you'll learn how to build a cross-platform mobile application with Python and the Kivy GUI framework. You'll discover how to develop an application that can run on your desktop as well as your phone. Then, you'll package your app for Windows, Linux, and macOS.

Python Basics: File System Operations

Python Basics: File System Operations

Martin Breuss

Martin Breuss 33 Lessons 1h 45m
basics python

In this video course, you'll learn how to use the pathlib module to carry out file path operations with Python. These operations include creating, iterating over, searching for, moving, and deleting files and folders.

Context Managers and Python's with Statement

Context Managers and Python's with Statement

In this video course, you'll learn what the Python with statement is and how to use it with existing context managers. You'll also learn how to create your own context managers.

Python Basics: Dictionaries

Python Basics: Dictionaries

Philipp Acsany

Philipp Acsany 10 Lessons 28m
basics python

One of the most useful data structures in Python is the dictionary. In this video course, you’ll learn what a dictionary is, how dictionaries differ from lists and tuples, and how to define and use dictionaries in your own code.

Python 3 "pathlib" Module: Taming The Filesystem

Using Python's pathlib Module

In this video course, you'll learn how to effectively work with file system paths in Python 3 using the pathlib module in the standard library.

Everyday Project Packaging With pyproject.toml

Everyday Project Packaging With pyproject.toml

In this Code Conversation video course, you'll learn how to package your everyday projects with pyproject.toml. Playing on the same team as the import system means you can call your project from anywhere, ensure consistent imports, and have one file that'll work for many build systems.

Securely Deploy a Django App With Gunicorn, Nginx, & HTTPS

Deploy a Django App With Gunicorn and Nginx

Ready to take your Django app beyond development? Learn how to deploy your Django web app in production on a real-world public domain with Gunicorn and Nginx.

Refactoring: Prepare Your Code to Get Help

Refactoring: Prepare Your Code to Get Help

In this Code Conversation video course, you'll explore the steps you can take to get help when you're stuck while coding. You'll investigate how to clean up your code to focus on the question you have. Along the way, you'll learn how to handle errors and use custom exceptions.

Python Basics: Scopes

Python Basics: Scopes

Philipp Acsany

Philipp Acsany 9 Lessons 23m
basics python

In this video course, you'll learn what scope is and why it's important to coding functions and loops in Python. You'll also get to know the LEGB rule.

Python 3.11: Cool New Features for You to Try

Cool New Features in Python 3.11

In this video course, you'll explore what Python 3.11 brings to the table. You'll learn how Python 3.11 is the fastest and most user-friendly version of CPython yet, and learn about improvements to the typing system and to the asynchronous features of Python.

Python Basics: Numbers and Math

Python Basics: Numbers and Math

In this video course, you'll learn the math that you'll need for your Python programming journey. This includes integers and floating-point numbers, arithmetic operators, and string formatting for numbers.

Providing Multiple Constructors in Your Python Classes

Providing Multiple Constructors in Your Python Classes

In this video course, you'll learn how to provide multiple constructors in your Python classes. To this end, you'll learn different techniques, such as checking argument types, using default argument values, writing class methods, and implementing single-dispatch methods.

Python Basics: Strings and String Methods

Python Basics: Strings and String Methods

Christopher Bailey

Christopher Bailey 10 Lessons 1h 8m
basics python

In Python, collections of text are called strings. In this course, you'll learn about this fundamental data type and the string methods that you can use to manipulate strings. Along the way, you'll learn ways to work with strings of numbers, and how to format strings for printing.

Sneaky REST APIs With Django Ninja

Sneaky REST APIs With Django Ninja

In this video course, you'll learn how to use Django Ninja, a FastAPI-inspired tool for turning Django views in REST API endpoints. With Ninja, you can quickly build API endpoints.

Build Your Python Project Documentation With MkDocs

Building Python Project Documentation With MkDocs

In this video course, you'll learn how to build professional documentation for a Python package using MkDocs and mkdocstrings. These tools allow you to generate nice-looking and modern documentation from Markdown files and, more importantly, from your code's docstrings.

Python Basics: Conditional Logic & Control Flow

Python Basics: Conditional Logic and Control Flow

Ian Currie

Ian Currie 12 Lessons 1h 21m
basics python

In this Python Basics video course, you'll learn how to use conditional logic to write programs that perform different actions based on different conditions. Paired with functions and loops, conditional logic allows you to write complex programs that can handle many different situations.

How to Build Command Line Interfaces in Python With argparse

Building Command Line Interfaces With argparse

In this step-by-step Python video course, you'll learn how to take your command line Python scripts to the next level by adding a convenient command line interface that you can write with argparse.

Python Basics: Functions and Loops

Python Basics: Functions and Loops

Philipp Acsany

Philipp Acsany 7 Lessons 48m
basics python

In this Python Basics video course, you'll learn how to create user-defined functions that you can execute several times throughout your code. You'll also try your hand at repeating code with for and while loops.

Build a URL Shortener With FastAPI and Python

Building a URL Shortener With FastAPI and Python

In this video course, you'll build an app to create and manage shortened URLs. Your Python URL shortener can receive a full target URL and return a shortened URL. You'll also use the automatically created documentation of FastAPI to try out your API endpoints.

Caching in Python Using the LRU Cache Strategy

Caching in Python With lru_cache

Caching is an essential optimization technique. In this video course, you'll learn how to use Python's @lru_cache decorator to cache the results of your functions using the LRU cache strategy. This is a powerful technique you can use to leverage the power of caching in your implementations.

Exploring Special Function Parameters

Exploring Special Function Parameters

In this Code Conversation video course, you'll explore special function parameters that allow for positional-only arguments, keyword-only arguments, or a combination of the two.

Python Basics: Finding and Fixing Code Bugs

Python Basics: Finding and Fixing Code Bugs

Martin Breuss

Martin Breuss 12 Lessons 42m
basics tools

In this Python Basics video course, you'll learn how to identify and fix logic errors, or bugs, in your Python code. You'll use the built-in debugging tools in Python's Integrated Development and Learning Environment to practice locating and resolving bugs in an example function.

Python's property(): Add Managed Attributes to Your Classes

Managing Attributes With Python's property()

In this video course, you'll learn how to create managed attributes, also known as properties, using Python's property() in your custom classes.

Using the "not" Boolean Operator in Python

Using the Python not Operator

Howard Francis

Howard Francis 14 Lessons 30m
basics python

In this course, you'll learn how Python's "not" operator works and how to use it in your code. You'll get to know its features and see what kind of programming problems you can solve by using "not" in Python.

Using the "and" Boolean Operator in Python

Using the Python and Operator

In this video course, you'll learn how Python's "and" operator works and how to use it in your code. You'll get to know its special features and see what kind of programming problems you can solve by using "and" in Python.

Build a Site Connectivity Checker in Python

Building a Site Connectivity Checker

In this video course, you'll build a Python site connectivity checker for the command line. While building this app, you'll integrate knowledge related to making HTTP requests with standard-library tools, creating command-line interfaces, and managing concurrency with asyncio and aiohttp.

Python mmap: Improved File I/O With Memory Mapping

Python mmap: Doing File I/O With Memory Mapping

In this video course, you'll learn how to use Python's mmap module to improve your code's performance when you're working with files. You'll get a quick overview of the different types of memory before diving into how and why memory mapping with mmap can make your file I/O operations faster.

Combining Data in Pandas With merge(), .join(), and concat()

Combining Data in pandas With concat() and merge()

In this video course, you'll learn two techniques for combining data in pandas: merge() and concat(). Combining Series and DataFrame objects in pandas is a powerful way to gain new insights into your data.

Real Python Code Conversations

Write and Test a Python Function: Interview Practice

In this interview practice session, you'll tackle creating a function that will double every character within a string. This challenge is typical of what you might encounter in a Python job interview. You'll explore how to add tests to your code.

Pythonic Data Cleaning With Pandas and NumPy

Data Cleaning With pandas and NumPy

In this video course, you'll learn how to clean up messy data using pandas and NumPy. You'll become equipped to deal with a range of problems, such as missing values, inconsistent formatting, malformed records, and nonsensical outliers.

Exploring Scopes and Closures in Python

Exploring Scopes and Closures in Python

In this Code Conversation video course, you'll take a deep dive into how scopes and closures work in Python. To do this, you'll use a debugger to walk through some sample code, and then you'll take a peek under the hood to see how Python holds variables internally.

Python Class Constructors: Control Your Object Instantiation

Using Python Class Constructors

In this video course, you'll learn how class constructors work in Python. You'll also explore Python's instantiation process, which has two main steps: instance creation and instance initialization.

Deploying a Python Flask Example Application Using Heroku

Deploying a Flask Application Using Heroku

In this video course, you'll learn how to create a Python Flask example web application and deploy it using Heroku. You’ll also use Git to track changes to the code, and you’ll configure a deployment workflow with different environments for staging and production.

Effective Python Testing With Pytest

Testing Your Code With pytest

In this video course, you'll learn how to take your testing to the next level with pytest. You'll cover intermediate and advanced pytest features such as fixtures, marks, parameters, and plugins. With pytest, you can make your test suites fast, effective, and less painful to maintain.

Get Started With Django Part 2: Django User Management

Building a Django User Management System

In this video course, you'll learn how to extend your Django application with a user management system, complete with email sending and third-party authentication.

Python Keywords: An Introduction

Exploring Keywords in Python

Philipp Acsany

Philipp Acsany 7 Lessons 30m
basics python

Python keywords make up the fundamental building blocks of any Python program. In this video course, you'll learn the basic syntax and usage for each of Python's thirty-five keywords so you can write more efficient and readable code.

Use FastAPI to Build Web APIs

Python REST APIs With FastAPI

In this course, you'll learn the main concepts of FastAPI and how to use it to quickly create web APIs that implement best practices by default. By the end of it, you will be able to start creating production-ready web APIs.

Using Python datetime to Work With Dates and Times

Using Python's datetime Module

Have you ever wondered about working with dates and times in Python? In this video course, you'll learn all about the built-in Python datetime library. You'll also learn about how to manage time zones and daylight saving time, and how to do accurate arithmetic on dates and times.

Python Basics: Code Your First Python Program

Python Basics: Code Your First Python Program

In this video course, you'll write your first Python program. Along the way, you'll learn about errors, declare variables and inspect their values, and try your hand at writing comments.

Pandas Sort: Your Guide to Sorting Data in Python

Sorting Data in Python With pandas

In this video course, you'll learn how to sort data in a pandas DataFrame using the pandas sort functions sort_values() and sort_index(). You'll learn how to sort by one or more columns and by index in ascending or descending order.

Python's Counter: The Pythonic Way to Count Objects

Counting With Python's Counter

In this video course, you'll learn how to use Python's Counter to count several repeated objects at once.

A Python Guide to the Fibonacci Sequence

Exploring the Fibonacci Sequence With Python

Darren Jones

Darren Jones 11 Lessons 23m
intermediate

In this video course, you'll explore the Fibonacci sequence in Python, which serves as an invaluable springboard into the world of recursion, and learn how to optimize recursive algorithms in the process.

Linear Regression in Python

Starting With Linear Regression in Python

In this video course, you'll get started with linear regression in Python. Linear regression is one of the fundamental statistical and machine learning techniques, and Python is a popular choice for machine learning.

Python any(): Powered Up Boolean Function

Python any(): Powered Up Boolean Function

Ian Currie

Ian Currie 9 Lessons 36m
basics python

If you've ever wondered how to simplify complex conditionals by determining if at least one in a series of conditions is true, then look no further. This video course will teach you all about how to use any() in Python to do just that.

Using Python Optional Arguments When Defining Functions

Defining Python Functions With Optional Arguments

Darren Jones

Darren Jones 13 Lessons 34m
basics python

In this video course, you'll learn about Python optional arguments and how to define functions with default values. You'll also learn how to create functions that accept any number of arguments using args and kwargs.

Using the len() Function in Python

Python's len() Function

In this course, you'll learn how and when to use the len() Python function. You'll also learn how to customize your class definitions so that objects of a user-defined class can be used as arguments in len().

Python enumerate(): Simplify Looping With Counters

Looping With Python enumerate()

Once you learn about for loops in Python, you know that using an index to access items in a sequence isn't very Pythonic. So what do you do when you need that index value? In this course, you'll learn all about Python's built-in enumerate(), where it's used, and how you can emulate its behavior.

Getting Started With Python IDLE

Starting With Python IDLE

In this course, you'll learn how to use the development environment included with your Python installation. Python IDLE is a small program that packs a big punch! You'll learn how to use Python IDLE to interact with Python directly, work with Python files, and improve your development workflow.

A Guide to Pipenv, the new Python Packaging Tool

Working With Pipenv

Pipenv is a packaging tool for Python that solves some common problems associated with the typical workflow using pip, virtualenv, and requirements.txt. In this course, you'll go over what problems Pipenv solves and how to manage your Python dependencies with it.

Python Web Applications: Deploy Your Script as a Flask App

Deploy Your Python Script on the Web With Flask

In this course, you’ll learn how to go from a local Python script to a fully deployed Flask web application that you can share with the world.

An Introduction to Python Exceptions

Raising and Handling Python Exceptions

Martin Breuss

Martin Breuss 9 Lessons 33m
basics python

In this course, you'll learn what an exception is and how it differs from a syntax error. You'll learn about raising exceptions, making assertions, and catching exceptions to change the control flow of your program using the try, except, else, and finally keywords.

Hosting a Django Project on Heroku

Host Your Django Project on Heroku

In this course, you'll learn how to host your Django project in the cloud for free and with little hassle. You'll use Heroku, which takes the burden of infrastructure management off your shoulders.

Bitwise Operators in Python

Binary, Bytes, and Bitwise Operators in Python

In this course, you'll learn how to use Python's bitwise operators to manipulate individual bits of data at the most granular level. With the help of hands-on examples, you'll see how you can apply bitmasks and overload bitwise operators to control binary data in your code.

Develop Data Visualization Interfaces in Python With Dash

Data Visualization Interfaces in Python With Dash

In this course, you'll learn how to build a dashboard using Python and Dash. Dash is a framework for building data visualization interfaces. It helps data scientists build fully interactive web applications quickly.

Python AI: How to Build a Neural Network & Make Predictions

Building a Neural Network & Making Predictions With Python AI

In this step-by-step course, you'll build a neural network from scratch as an introduction to the world of artificial intelligence (AI) in Python. You'll learn how to train your neural network and make accurate predictions based on a given dataset.

Python's .append(): Add Items to Your Lists in Place

Building Lists With Python's .append()

Howard Francis

Howard Francis 11 Lessons 40m
basics python

In this step-by-step course, you'll learn how Python's .append() works and how to use it for adding items to your list in place. You'll also learn how to code your own stacks and queues using .append() and .pop().

Visualizing Data in Python Using plt.scatter()

Using plt.scatter() to Visualize Data in Python

In this course, you'll learn how to create scatter plots in Python, which are a key part of many data visualization applications. You'll get an introduction to plt.scatter(), a versatile function in the Matplotlib module for creating scatter plots.

Basic Input, Output, and String Formatting in Python

Reading Input and Writing Output in Python

Martin Breuss

Martin Breuss 6 Lessons 15m
basics python

In this introductory Python course, you'll learn how to take user input from the keyboard with the built-in function input() and how to display output to the console with the built-in function print().

Python Best Practices Artwork

Writing Idiomatic Python

What are the programming idioms unique to Python? This course is a short overview for people coming from other languages and an introduction for beginners to the idiomatic practices within Python. You'll cover truth values, looping, DRY principles, and the Zen of Python.

The Walrus Operator: Python 3.8 Assignment Expressions

Python Assignment Expressions and Using the Walrus Operator

In this course, you'll learn about assignment expressions and the walrus operator. The biggest change in Python 3.8 was the inclusion of the := operator, which you can use to assign variables in the middle of expressions. You'll see several examples of how to take advantage of this new feature.

Build an Asteroids Game With Python and Pygame

Using Pygame to Build an Asteroids Game in Python

In this course, you'll build a clone of the Asteroids game in Python using Pygame. Step by step, you'll add images, input handling, game logic, sounds, and text to your program.

Python 3.10: Cool New Features for You to Try

Cool New Features in Python 3.10

In this course, you'll explore some of the coolest and most useful features in Python 3.10. You'll appreciate more user-friendly error messages, learn about how you can handle complicated data structures with structural pattern matching, and explore new enhancements to Python's type system.

Make Your First Python Game: Rock, Paper, Scissors!

Rock, Paper, Scissors With Python: A Command Line Game

In this course, you'll learn to program rock paper scissors in Python from scratch. You'll learn how to take in user input, make the computer choose a random action, determine a winner, and split your code into functions.

Pass by Reference in Python: Background and Best Practices

Pass by Reference in Python: Best Practices

In this course, you'll explore the concept of passing by reference and learn how it relates to Python's own system for handling function arguments. You'll look at several use cases for passing by reference and learn some best practices for implementing pass-by-reference constructs in Python.

Data Classes in Python 3.7 (And Above)

Using Data Classes in Python

Data classes are one of the new features introduced in Python 3.7. When using data classes, you don't have to write boilerplate code to get proper initialization, representation, and comparisons for your objects.

Using ggplot in Python: Visualizing Data With plotnine

Graph Your Data With Python and ggplot

In this course, you'll learn how to use ggplot in Python to build data visualizations with plotnine. You'll discover what a grammar of graphics is and how it can help you create plots in a very concise and consistent way.

Split Your Dataset With scikit-learn's train_test_split()

Splitting Datasets With scikit-learn and train_test_split()

In this course, you'll learn why it's important to split your dataset in supervised machine learning and how to do that with train_test_split() from scikit-learn.

The Python math Module: Everything You Need to Know

Exploring the Python math Module

Cesar Aguilar

Cesar Aguilar 16 Lessons 1h 20m
intermediate python

In this step-by-step course, you’ll learn all about Python’s math module for higher-level mathematical functions. Whether you’re working on a scientific project, a financial application, or any other type of programming endeavor, you just can’t escape the need for math!

Pandas: How to Read and Write Files

Reading and Writing Files With pandas

In this course, you'll learn about the pandas IO tools API and how you can use it to read and write files. You'll use the pandas read_csv() function to work with CSV files. You'll also cover similar methods for efficiently working with Excel, CSV, JSON, HTML, SQL, pickle, and big data files.

The Python return Statement: Usage and Best Practices

Using the Python return Statement Effectively

In this step-by-step course, you'll learn how to use the Python return statement when writing functions. Additionally, you'll cover some good programming practices related to the use of return. With this knowledge, you'll be able to write readable, robust, and maintainable functions in Python.

Python sleep(): How to Add Time Delays to Your Code

Using sleep() to Code a Python Uptime Bot

In this course, you'll learn how to add time delays to your Python programs. You'll use the built-in time module to add Python sleep() calls to your code. To practice, you'll use time.sleep() when making an uptime bot that checks whether a website is still live.

The Pandas DataFrame: Make Working With Data Delightful

The pandas DataFrame: Working With Data Efficiently

In this course, you'll get started with pandas DataFrames, which are powerful and widely used two-dimensional data structures. You'll learn how to perform basic operations with data, handle missing values, work with time-series data, and visualize data from a pandas DataFrame.

Python Speech Recognition

Speech Recognition With Python

In this course, you'll cover the fundamentals of speech recognition with Python. You'll learn which speech recognition library gives the best results and build a full-featured "Guess The Word" game with it.

Introduction to Python 3

The Square Root Function in Python

Christopher Trudeau

Christopher Trudeau 5 Lessons 19m
basics

In this quick and practical course, you'll learn what a square root is and how to calculate one in Python. You'll even see how you can use the Python square root function to solve a real-world problem.

Defining Your Own Python Function

Defining and Calling Python Functions

Howard Francis

Howard Francis 27 Lessons 2h 23m
basics python

In this course, you'll learn how to define and call your own Python function. You'll also learn about passing data to your function and returning data from your function back to its calling environment.

Python Inner Functions

Python Inner Functions

In this step-by-step course, you'll learn what inner functions are in Python, how to define them, and what their main use cases are.

Python vs JavaScript for Pythonistas

Python vs JavaScript for Python Developers

Python and JavaScript are two of the most popular programming languages in the world. In this course, you'll take a deep dive into the JavaScript ecosystem by comparing Python vs JavaScript. You'll learn the jargon, language history, and best practices from a Pythonista's perspective.

Pandas Project: Make a Gradebook With Pandas

Using pandas to Make a Gradebook in Python

With this course and Python project, you'll build a script to calculate grades for a class using pandas. The script will quickly and accurately calculate grades from a variety of data sources. You'll see examples of loading, merging, and saving data with pandas, as well as plotting some summary statistics.

Python Basics Video Course Setup Artwork

Python Basics: Setting Up Python

David Amos

David Amos 5 Lessons 25m
basics

The first step to getting started with Python is to set it up on your machine. In this course, you'll learn how to download Python for Windows, macOS, and Ubuntu Linux and how to open Python's Integrated Development and Learning Environment, IDLE.

Using Pandas and Python to Explore Your Dataset

Explore Your Dataset With pandas

In this step-by-step course, you'll learn how to start exploring a dataset with pandas and Python. You'll learn how to access specific rows and columns to answer questions about your data. You'll also see how to handle missing values and prepare to visualize your dataset in a Jupyter Notebook.

Django Setup Guide

How to Set Up a Django Project

In this course, you'll learn the necessary steps you'll need to take to set up a new Django project. You'll learn the basic setup for any new Django project that needs to happen before programming the specific functionality of your project.

How to Use the Python or Operator

Using the Python or Operator

Howard Francis

Howard Francis 20 Lessons 1h
basics python

In this step-by-step course, you'll learn about how the Python or operator works and how to use it. You'll get to know its special features and see what kind of programming problems you can solve by using or in Python.

Common Python Data Structures (Guide)

Stacks and Queues: Selecting the Ideal Data Structure

In this course, you'll learn about three of Python's data structures: stacks, queue and priority queues. You'll look at multiple types and classes for all of these and learn which implementations are best for your specific use cases.

PySimpleGUI: The Simple Way to Create a GUI With Python

Simplify Python GUI Development With PySimpleGUI

Darren Jones

Darren Jones 9 Lessons 35m
gui intermediate

In this step-by-step course, you'll learn how to create a cross-platform graphical user interface (GUI) using Python and PySimpleGUI. A graphical user interface is an application that has buttons, windows, and lots of other elements that the user can use to interact with your application.

Python's map(): Processing Iterables Without a Loop

Python's map() Function: Transforming Iterables

In this step-by-step course, you'll learn how Python's map() works and how to use it effectively in your programs. You'll also learn how to use list comprehension and generator expressions to replace map() in a Pythonic and efficient way.

Practical Text Classification With Python and Keras

Learn Text Classification With Python and Keras

In this course, you’ll learn about Python text classification with Keras, working your way from a bag-of-words model with logistic regression to more advanced methods, such as convolutional neural networks. You’ll also see how you can use pretrained word embeddings and hyperparameter optimization.

Managing Multiple Python Versions With pyenv

Start Managing Multiple Python Versions With pyenv

Johan Vergeer

Johan Vergeer 14 Lessons 40m
advanced tools

In this step-by-step course, you'll learn how to install multiple Python versions and switch between them with ease, including project-specific virtual environments, with pyenv.

Object-Oriented Programming in Python vs Java

Python vs Java: Object Oriented Programming

Howard Francis

Howard Francis 16 Lessons 1h 17m
intermediate

In this step-by-step course, you'll learn about the practical differences in Python vs Java for object-oriented programming. By the end, you'll be able to apply your knowledge to Python, understand how to reinterpret your understanding of Java objects to Python, and use objects in a Pythonic way.

When to Use a List Comprehension in Python

Understanding Python List Comprehensions

Rich Bibby

Rich Bibby 5 Lessons 18m
basics python

Python list comprehensions make it easy to create lists while performing sophisticated filtering, mapping, and conditional logic on their members. In this course, you'll learn when to use a list comprehension in Python and how to create them effectively.

Common Python Data Structures (Guide)

Records and Sets: Selecting the Ideal Data Structure

In this course, you'll learn about two of Python's data structures: records and sets. You'll look at multiple types and classes for both of these and learn which implementations are best for your specific use cases.

Python Booleans: Optimize Your Code With Truth Values

Python Booleans: Leveraging the Values of Truth

Cesar Aguilar

Cesar Aguilar 9 Lessons 1h 9m
intermediate

In this course, you'll learn about the built-in Python Boolean data type, which is used to represent the truth value of an expression. You'll see how to use Booleans to compare values, check for identity and membership, and control the flow of your programs with conditionals.

Get Started With Django Part 3: Django View Authorization

Django View Authorization: Restricting Access

This course covers how to restrict your web pages to users with different roles through Django view authorization. You'll learn about HttpRequest.user objects, decorators that authenticate views, and ways to notify your users with the Django messages framework.

Namespaces and Scope in Python

Navigating Namespaces and Scope in Python

Johan Vergeer

Johan Vergeer 11 Lessons 27m
basics python

In this course, you'll learn about Python namespaces, the structures used to store and organize the symbolic names created during execution of a Python program. You'll learn when namespaces are created, how they are implemented, and how they define variable scope.

Common Python Data Structures (Guide)

Dictionaries and Arrays: Selecting the Ideal Data Structure

In this course, you'll learn about two of Python's data structures: dictionaries and arrays. You'll look at multiple types and classes for both of these and learn which implementations are best for your specific use cases.

PyQt Layouts: Create Professional-Looking GUI Applications

Creating PyQt Layouts for GUI Applications

Christian Koch

Christian Koch 12 Lessons 1h 9m
gui intermediate

In this step-by-step course, you’ll learn how to use PyQt layouts to arrange and manage the graphical components on your GUI applications. With the help of PyQt's layout managers, you'll be able to create polished and professional GUIs with minimal effort.

Python Modulo in Practice: How to Use the % Operator

Python Modulo: Using the % Operator

In this course, you'll learn about the Python modulo operator (%). You'll look at the mathematical concepts behind the modulo operation and how the modulo operator is used with Python's numeric types. You'll also see ways to use the modulo operator in your own code.

Plot With Pandas: Python Data Visualization for Beginners

Plot With pandas: Python Data Visualization Basics

In this course, you'll get to know the basic plotting possibilities that Python provides in the popular data analysis library pandas. You'll learn about the different kinds of plots that pandas offers, how to use them for data exploration, and which types of plots are best for certain use cases.

Python's eval(): Evaluating Expressions Dynamically

Evaluate Expressions Dynamically With Python eval()

In this step-by-step course, you'll learn how Python's eval() works and how to use it effectively in your programs. Additionally, you'll learn how to minimize the security risks associated to the use of eval().

Sorting Algorithms in Python

Introduction to Sorting Algorithms in Python

Liam Pulsifer

Liam Pulsifer 9 Lessons 1h 3m
intermediate

In this course, you'll learn all about five different sorting algorithms in Python from both a theoretical and a practical standpoint. You'll also learn several related and important concepts, including Big O notation and recursion.

Managing Python Dependencies Course

Managing Python Dependencies

Get up to speed with Python dependency management quickly and go from “writing scripts” to “building applications” with this complete course.

Python Django Tutorials Artwork

Building HTTP APIs With Django REST Framework

This course will get you ready to build HTTP APIs with Django REST Framework. The Django REST framework (DRF) is a toolkit built on top of the Django web framework that reduces the amount of code you need to write to create REST interfaces.

Customize the Django Admin With Python

Django Admin Customization

In this course, you'll learn how to customize Django's admin with Python. You'll use AdminModel objects to add display columns, calculate values, link to referring objects, and search and filter results. You'll also use template overriding to gain full control over the admin's HTML.

The Python pickle Module: How to Persist Objects in Python

Serializing Objects With the Python pickle Module

In this course, you'll learn how you can use the Python pickle module to convert your objects into a stream of bytes that can be saved to a disk or sent over a network. You'll also learn the security implications of using this process on objects from an untrusted source.

The Beginner's Guide to Python Turtle

Python Turtle for Beginners

Darren Jones

Darren Jones 10 Lessons 37m
basics python

In this step-by-step course, you'll learn the basics of Python programming with the help of a simple and interactive Python library called turtle. If you're a beginner to Python, then this course will definitely help you on your journey as you take your first steps into the world of programming.

Speed Up Your Python Program With Concurrency

Speed Up Python With Concurrency

Learn what concurrency means in Python and why you might want to use it. You'll see a simple, non-concurrent approach and then look into why you'd want threading, asyncio, or multiprocessing.

Memory Management in Python

How Python Manages Memory

Get ready for a deep dive into the internals of Python to understand how it handles memory management. By the end of this course, you’ll know more about low-level computing, understand how Python abstracts lower-level operations, and find out about Python’s internal memory management algorithms.

A Guide to the Newer Python String Format Techniques

Formatting Python Strings

Liam Pulsifer

Liam Pulsifer 7 Lessons 32m
basics python

In this course, you'll see two items to add to your Python string formatting toolkit. You'll learn about Python's string format method and the formatted string literal, or f-string. You'll learn about these formatting techniques in detail and add them to your Python string formatting toolkit.

Regular Expressions: Regexes in Python (Part 1)

Regular Expressions and Building Regexes in Python

Christopher Trudeau

Christopher Trudeau 14 Lessons 1h 53m
basics python

In this course, you'll learn how to perform more complex string pattern matching using regular expressions, or regexes, in Python. You'll also explore more advanced regex tools and techniques that are available in Python.

Using the Python defaultdict Type for Handling Missing Keys

Handling Missing Keys With the Python defaultdict Type

In this step-by-step course, you'll learn how the Python defaultdict type works and how to use it for handling missing keys when you're working with dictionaries. You'll also learn how to use a defaultdict to solve problems like grouping or counting the items in a sequence or collection.

SimPy: Simulating Real-World Processes With Python

Simulating Real-World Processes in Python With SimPy

In this step-by-step course, you'll see how you can use the SimPy package to model real-world processes with a high potential for congestion. You'll create an algorithm to approximate a complex system, and then you'll design and run a simulation of that system in Python.

How to Do a Binary Search in Python

Creating a Binary Search in Python

Liam Pulsifer

Liam Pulsifer 8 Lessons 45m
intermediate

Binary search is a classic algorithm in computer science. In this step-by-step course, you'll learn how to implement this algorithm in Python. You'll learn how to leverage existing libraries as well as craft your own binary search Python implementation.

MicroPython: An Introduction to Programming Hardware in Python

Getting Started With MicroPython

Darren Jones

Darren Jones 10 Lessons 55m
intermediate

Are you interested in the Internet of Things, home automation, and connected devices? If so, then you're in luck! In this course, you'll learn about MicroPython and the world of electronics hardware. You'll set up your board, write your code, and deploy a MicroPython project to your own device.

Beautiful Soup: Build a Web Scraper With Python

Web Scraping With Beautiful Soup and Python

In this course, you'll walk through the main steps of the web scraping process. You'll learn how to write a script that uses Python's requests library to scrape data from a website. You'll also use Beautiful Soup to extract the specific pieces of information that you're interested in.

Python 3.9: Cool New Features

Cool New Features in Python 3.9

In this course, you'll explore some of the coolest and most useful features in the newly released Python 3.9. You'll learn how Python 3.9 makes it easier to work with time zones, dictionaries, decorators, and several other techniques that will make your code cleaner and more efficient.

Create a Flask Application With Google Login

Using Google Login With Flask

In this course, you'll create a Flask application that lets users sign in using their Google login. You'll learn about OAuth 2 and OpenID Connect and also find out how to implement some code to handle user session management.

Linked Lists in Python: An Introduction

Working With Linked Lists in Python

In this course, you'll learn what linked lists are and when to use them, such as when you want to implement queues, stacks, or graphs. You'll also learn how to use collections.deque to improve the performance of your linked lists and how to implement linked lists in your own projects.

Python Command Line Arguments

Command Line Interfaces in Python

Command line arguments are the key to converting your programs into useful and enticing tools that are ready to be used in the terminal of your operating system. In this course, you'll learn their origins, standards, and basics, and how to implement them in your program.

Exploring HTTPS With Python

Exploring HTTPS and Cryptography in Python

In this course, you'll gain a working knowledge of the various factors that combine to keep communications over the Internet safe. You'll see concrete examples of how to keep information secure and use cryptography to build your own Python HTTPS application.

A Guide to Excel Spreadsheets in Python With openpyxl

Editing Excel Spreadsheets in Python With openpyxl

Joe Tatusko

Joe Tatusko 16 Lessons 1h 13m
data-viz intermediate

In this course, you'll learn how to handle spreadsheets in Python using the openpyxl package. You'll learn how to manipulate Excel spreadsheets, extract information from spreadsheets, create simple or more complex spreadsheets, including adding styles, charts, and so on.

Django Redirects Tutorial

Django Redirects

In this course, you'll learn everything you need to know about HTTP redirects in Django. All the way from the low-level details of the HTTP protocol to the high-level way of dealing with them in Django.

People discussing Python

Office Hours Archive

David Amos

David Amos 51 Lessons 55h 38m
community

The Real Python Office Hours is a weekly hangout where members of Real Python get the chance to interact with each other as well as Real Python authors and video course instructors. Join us live on Wednesday mornings!

Invalid Syntax in Python: Common Reasons for SyntaxError

Identify Invalid Python Syntax

Darren Jones

Darren Jones 12 Lessons 25m
basics python

In this video course, you'll see common examples of invalid syntax in Python and learn how to resolve the issue. If you've ever received a SyntaxError when trying to run your Python code, then this is the guide for you!

Working With Files in Python

Practical Recipes for Working With Files in Python

Liam Pulsifer

Liam Pulsifer 13 Lessons 1h 13m
basics projects

In this course, you'll learn how you can work with files in Python by using built-in modules to perform practical tasks that involve groups of files, like renaming them, moving them around, archiving them, and getting their metadata.

Null in Python: Understanding Python's NoneType Object

Python's None: Null in Python

In this course, you'll learn about the NoneType object None, which acts as the null in Python. This object represents emptiness, and you can use it to mark default parameters and even show when you have no result. None is a tool for doing everything with nothing!

A Beginner’s Guide to the Python time Module

Mastering Python's Built-in time Module

Liam Pulsifer

Liam Pulsifer 7 Lessons 39m
intermediate

In this course, you'll learn how to use the Python time module to represent dates and times in your application, manage code execution, and measure performance.

13 Project Ideas for Intermediate Python Developers

Grow Your Python Portfolio With 13 Intermediate Project Ideas

In this course, you'll learn how you can get started on 13 Python project ideas that are just right for intermediate Python developers. They'll challenge you enough to help you become a better Pythonista but will still be doable!

Pointers in Python: What's the Point?

Pointers and Objects in Python

In this video course, you'll learn about Python's object model and see why pointers don't really exist in Python. You'll also cover ways to simulate pointers in Python without managing memory.

Unicode & Character Encodings in Python: A Painless Guide

Unicode in Python: Working With Character Encodings

In this course, you'll get a Python-centric introduction to character encodings and Unicode. Handling character encodings and numbering systems can at times seem painful and complicated, but this guide is here to help with easy-to-follow Python examples.

How to Make a Discord Bot in Python

Creating a Discord Bot in Python

In this course, you'll learn how to make a Discord bot in Python and interact with several APIs. You'll learn how to handle events, accept commands, validate and verify input, and all the basics that can help you create useful and exciting automations!

How to Use Generators and Yield in Python

Python Generators 101

In this step-by-step course, you'll learn about generators and yielding in Python. You'll create generator functions and generator expressions using multiple Python yield statements. You'll also learn how to build data pipelines that take advantage of these Pythonic tools.

Understanding the Python Traceback

Getting the Most Out of a Python Traceback

Rich Bibby

Rich Bibby 5 Lessons 21m
basics python

In this step-by-step course, you'll learn how to read and understand the information you can get from a Python stack traceback. You'll walk through several examples and see some of the most common tracebacks in Python.

Using the Python zip() Function for Parallel Iteration

Parallel Iteration With Python's zip() Function

Liam Pulsifer

Liam Pulsifer 6 Lessons 35m
basics python

In this course, you'll learn how to use the Python zip() function to solve common programming problems. You'll learn how to traverse multiple iterables in parallel and create dictionaries with just a few lines of code.

What Is pip? A Guide for New Pythonistas

A Beginner's Guide to pip

Austin Cepalia

Austin Cepalia 10 Lessons 34m
basics tools

What is pip? In this beginner-friendly course, you'll learn how to use pip, the standard package manager for Python, so that you can install and manage additional packages that are not part of the Python standard library.

Python Pit Stop

Convert a Python String to int

Darren Jones

Darren Jones 5 Lessons 9m
basics python

There are several ways to represent integers in Python. In this quick and practical course, you'll learn how you can store integers using int and str as well as how you can convert a Python string to an int and vice versa.

Understanding the Python Mock Object Library

Improve Your Tests With the Python Mock Object Library

Lee Gaines

Lee Gaines 31 Lessons 1h 29m
intermediate testing

In this course, you'll learn how to use the Python mock object library, unittest.mock, to create and use mock objects to improve your tests. Obstacles like complex logic and unpredictable dependencies make writing valuable tests difficult, but unittest.mock can help you overcome these obstacles.

The Ultimate Guide to Python Print

The Python print() Function: Go Beyond the Basics

In this step-by-step course, you'll learn about the print() function in Python and discover some of its lesser-known features. Avoid common mistakes, take your "hello world" to the next level, and know when to use a better alternative.

Python Application Layouts and Project Structures

Structuring a Python Application

This course is a reference guide to common Python application layouts and project structures for command-line applications, web applications, and more.

How to Stand Out in a Python Coding Interview

Python Coding Interviews: Tips & Best Practices

James Uejio

James Uejio 22 Lessons 2h 21m
best-practices career

In this step-by-step course, you'll learn how to take your Python coding interview skills to the next level and use Python's built-in functions and modules to solve problems faster and more easily.

Inheritance and Composition: A Python OOP Guide

Inheritance and Composition: A Python OOP Guide

In this step-by-step course, you'll learn about inheritance and composition in Python. You'll improve your object-oriented programming (OOP) skills by understanding how to use inheritance and composition and how to leverage them in their design.

Arduino With Python: How to Get Started

Arduino With Python: How to Get Started

Christopher Bailey

Christopher Bailey 9 Lessons 1h 6m
intermediate

In this step-by-step course, you'll discover how to use Arduino microcontrollers with Python to develop your own electronic projects. You'll learn how to set up circuits and write applications with the Firmata protocol. You'll control Arduino inputs and outputs and integrate the board with higher-level apps.

Python Pit Stop

Comparing Python Objects the Right Way: "is" vs "=="

In this quick and practical course, you'll learn when to use the Python is, is not, == and != operators. You'll see what these comparison operators do under the hood, dive into some quirks of object identity and interning, and define a custom class.

NumPy arange(): How to Use np.arange()

Using NumPy's np.arange() Effectively

In this step-by-step course, you'll learn how to use the NumPy arange() function, which is one of the routines for array creation based on numerical ranges. np.arange() returns arrays with evenly spaced values

PyGame: A Primer on Game Programming in Python

Make a 2D Side-Scroller Game With PyGame

In this step-by-step course, you'll learn how to use PyGame. This library allows you to create games and rich multimedia programs in Python. You'll learn how to draw items on your screen, implement collision detection, handle user input, and much more!

Defining Main Functions in Python

Defining Main Functions in Python

In this step-by-step course, you'll learn how Python main functions are used and some best practices to organize your code so it can be executed as a script and imported from another module.

How to Implement a Python Stack

How to Implement a Python Stack

In this course, you'll learn how to implement a Python stack. You'll see how to recognize when a stack is a good choice for data structures, how to decide which implementation is best for a program, and what extra considerations to make about stacks in a threading or multiprocessing environment.

How to Work With a PDF in Python

How to Work With a PDF in Python

In this step-by-step course, you'll learn how to work with a PDF in Python. You'll see how to extract metadata from preexisting PDFs. You'll also learn how to merge, split, watermark, and rotate pages in PDFs using Python and PyPDF2.

Python IDEs and Code Editors: The Complete Guide

Finding the Perfect Python Code Editor

Martin Breuss

Martin Breuss 36 Lessons 2h 28m
basics tools

Find your perfect Python development setup with this review of Python IDEs and code editors. Writing Python using IDLE or the Python REPL is great for simple things, but not ideal for larger programming projects. With this course you'll get an overview of the most common Python coding environments to help you make an informed decision.

Playing and Recording Sound in Python

Playing and Recording Sound in Python

Joe Tatusko

Joe Tatusko 16 Lessons 40m
basics

In this course, you'll learn about libraries that can be used for playing and recording sound in Python, such as PyAudio and python-sounddevice. You'll also see code snippets for playing and recording sound files and arrays, as well as for converting between different sound file formats.

Sets in Python

Sets in Python

James Uejio

James Uejio 15 Lessons 47m
basics python

In this course, you'll learn how to work with Python's set data type. You'll see how to define set objects in Python and discover the operations that they support. By the end of this course, you'll have a good feel for when a set is an appropriate choice in your own programs.

Python Best Practices Artwork

Python Modules and Packages: An Introduction

Christopher Bailey

Christopher Bailey 12 Lessons 1h 2m
basics python

In this course, you'll explore Python modules and Python packages, two mechanisms that facilitate modular programming. See how to write and import modules so you can optimize the structure of your own programs and make them more maintainable.

Basic Data Types in Python

Basic Data Types in Python

Darren Jones

Darren Jones 18 Lessons 1h 27m
basics python

In this course, you'll learn the basic data types that are built into Python, like numbers, strings, and Booleans. You'll also get an overview of Python's built-in functions.

Supercharge Your Classes With Python super()

Supercharge Your Classes With Python super()

In this step-by-step course, you'll learn how to leverage single and multiple inheritance in your object-oriented application to supercharge your classes with Python super().

Python args and kwargs: Demystified

Python args and kwargs: Demystified

In this step-by-step course, you'll learn how to use args and kwargs in Python to add more flexibility to your functions. You'll also take a closer look at the single and double-asterisk unpacking operators, which you can use to unpack any iterable object in Python.

How to Use sorted() and sort() in Python

Sorting Data With Python

Joe Tatusko

Joe Tatusko 9 Lessons 33m
basics python

In this step-by-step course, you’ll learn how to sort in Python. You'll know how to sort various types of data in different data structures, customize the order, and work with two different ways of sorting in Python.

How to Iterate Through a Dictionary in Python

Python Dictionary Iteration: Advanced Tips & Tricks

In this step-by-step course, you'll take a deep dive into how to iterate through a dictionary in Python. Dictionaries are a fundamental data structure, and you'll be able to solve a wide variety of programming problems by iterating through them.

Documenting Python Code Guide

Documenting Python Code: A Complete Guide

Whether you're documenting a small script or a large project, whether you're a beginner or seasoned Pythonista, this guide will cover everything you need to know.

Variables in Python

Variables in Python

Martin Breuss

Martin Breuss 11 Lessons 41m
basics python

Learn how every item of data in a Python program can be described by the abstract term "object," and how to manipulate objects using symbolic names called "variables."

Python, Boto3, and AWS S3: Demystified

Python, Boto3, and AWS S3: Demystified

Joe Tatusko

Joe Tatusko 16 Lessons 1h 9m
devops intermediate

Get started working with Python, Boto3, and AWS S3. Learn how to create objects, upload them to S3, download their contents, and change their attributes directly from your script, all while avoiding common pitfalls.

Python KeyError Exceptions and How to Handle Them

Python KeyError Exceptions and How to Handle Them

Rich Bibby

Rich Bibby 5 Lessons 10m
basics python

In this course, you'll learn how to handle Python KeyError exceptions. They are often caused by a bad key lookup in a dictionary, but there are a few other situations when a KeyError can be raised as well. Knowing how to handle these exceptions is essential to writing good Python code.

An Intro to Threading in Python

Threading in Python

In this intermediate-level course, you'll learn how to use threading in your Python programs. You'll see how to create threads, how to coordinate and synchronize them, and how to handle common problems that arise in threading.

Core Python Tutorials Artwork

Thinking Recursively in Python

In this course, you'll learn how to work with recursion in your Python programs by mastering concepts such as recursive functions and recursive data structures.

Cool New Features in Python 3.8

Cool New Features in Python 3.8

What does Python 3.8 bring to the table? Learn about some of the biggest changes and see you how you can best make use of them.

The Ultimate Guide to Python Type Checking

Python Type Checking

In this course, you'll look at Python type checking. Traditionally, types have been handled by the Python interpreter in a flexible but implicit way. Recent versions of Python allow you to specify explicit type hints that can be used by different tools to help you develop your code more efficiently.

Python Matplotlib

Python Plotting With Matplotlib

In this beginner-friendly course, you'll learn about plotting in Python with matplotlib by looking at the theory and following along with practical examples.

Python's range() Function

The Python range() Function

Austin Cepalia

Austin Cepalia 7 Lessons 22m
basics python

In this step-by-step course, you'll master the Python range() function, learn how its implementation differs in Python 3 vs 2, and see how you can use it to write faster and more Pythonic code.

Get Started With Django Part 1: Build a Portfolio App

Get Started With Django: Build a Portfolio App

In this course, you'll learn the basics of creating powerful web applications with Django, a Python web framework. You'll build a portfolio website to showcase your web development projects, complete with a fully functioning blog.

Core Python Tutorials Artwork

Strings and Character Data in Python

Christopher Bailey

Christopher Bailey 19 Lessons 1h 48m
basics python

In this course, you'll learn how to use Python's rich set of operators, functions, and methods for working with strings. You'll learn how to access and extract portions of strings, and also become familiar with the methods that are available to manipulate and modify string data in Python 3.

Thonny: The Beginner-Friendly Python Editor

Thonny: The Beginner-Friendly Python Editor

In this course, you’ll learn all about Thonny, a free Python Integrated Development Environment (IDE) that was especially designed with the beginner Pythonista in mind. It has a built-in debugger and allows you to do step-through expression evaluation.

Python Development Tools Artwork

Python Debugging With pdb

In this hands-on course, you'll learn the basics of using pdb, Python's interactive source code debugger. pdb is a great tool for tracking down hard-to-find bugs, and it allows you to fix faulty code more quickly.

Absolute vs Relative Imports in Python

Absolute vs Relative Imports in Python

If you’ve worked on a Python project that has more than one file, chances are you’ve had to use an import statement before. In this course, you’ll not only cover the pros and cons of absolute and relative imports but also learn about the best practices for writing import statements.

Lists and Tuples in Python

Lists and Tuples in Python

Christopher Bailey

Christopher Bailey 11 Lessons 1h 1m
basics python

In this course, you'll cover the important characteristics of lists and tuples in Python 3. You'll learn how to define them and how to manipulate them. When you're finished, you'll have a good feel for when and how to use these object types in a Python program.

How to Use Python lambda Functions

How to Use Python Lambda Functions

In this step-by-step course, you'll learn about Python lambda functions. You'll see how they compare with regular functions and how you can use them in accordance with best practices.

Python Histogram Plots

Python Histogram Plotting: NumPy, Matplotlib, Pandas & Seaborn

In this course, you'll be equipped to make production-quality, presentation-ready Python histogram plots with a range of choices and features. It's your one-stop shop for constructing and manipulating histograms with Python's scientific stack.

Python Face Recognition and Face Detection

Traditional Face Detection With Python

In this course on face detection with Python, you'll learn about a historically important algorithm for object detection that can be successfully applied to finding the location of a human face within an image.

Beginner Tips for Learning Python

11 Beginner Tips for Learning Python

Darren Jones

Darren Jones 13 Lessons 37m
basics career python

In this course, you'll see several learning strategies and tips that will help you jumpstart your journey towards becoming a rockstar Python programmer!

How to Iterate Through a Dictionary in Python

Dictionaries in Python

Paul Mealus

Paul Mealus 4 Lessons 20m
basics python

In this course on Python dictionaries, you'll cover the basic characteristics of dictionaries and learn how to access and manage dictionary data. Once you've finished this course, you'll have a good sense of when a dictionary is the appropriate data type to use and know how to use it.

Logging in Python

Logging in Python

In this video course, you'll learn why and how to get started with Python's powerful logging module to meet the needs of beginners and enterprise teams alike.

Python Best Practices Artwork

How to Write Pythonic Loops

In this course, you'll see how you can make your loops more Pythonic if you're coming to Python from a C-style language. You'll learn how you can get the most out of using range(), xrange(), and enumerate(). You'll also see how you can avoid having to keep track of loop indexes manually.

Reading and Writing Files in Python (Guide)

Reading and Writing Files in Python

In this course, you'll learn about reading and writing files in Python. You'll cover everything from what a file is made up of to which libraries can help you along that way. You'll also take a look at some basic scenarios of file usage as well as some advanced techniques.

Core Python Tutorials Artwork

Functional Programming in Python

Dan Bader

Dan Bader 32 Lessons 1h 25m
advanced python

In this course, you'll learn how to approach functional programming in Python. You'll cover what functional programming is, how you can use immutable data structures to represent your data, as well as how to use filter(), map(), and reduce().

Generating Random Data With Python

Generating Random Data in Python

In this course, you'll cover several options for generating random data in Python, and then build up to a comparison of each in terms of its level of security, versatility, purpose, and speed.

How to Publish an Open-Source Python Package to PyPI

How to Publish Your Own Python Package to PyPI

Learn how to create a Python package for your project and how to publish it to PyPI, the Python Package Repository with this step-by-step course. Quickly get up to speed on everything from naming your package to configuring it using setup.py.

Python classmethods, staticmethods, and instance methods

OOP Method Types in Python: @classmethod vs @staticmethod vs Instance Methods

Dan Bader

Dan Bader 7 Lessons 14m
intermediate python

What's the difference between @classmethod, @staticmethod, and "plain/regular" instance methods in Python? You'll know the answer after watching this video course.

Git Tips for Python Developers

Introduction to Git and GitHub for Python Developers

What is Git, what is GitHub, and what's the difference? Learn the basics of Git and GitHub from the perspective of a Pythonista in this step-by-step video course.

Continuous Integration with Python: An Introduction

Continuous Integration With Python

In this course, you'll learn the core concepts behind Continuous Integration (CI) and why they are essential for modern software engineering teams. Find out how to how set up Continuous Integration for your Python project to automatically create environments, install dependencies, and run tests.

Interactive Data Visualization in Python With Bokeh

Interactive Data Visualization in Python With Bokeh

This course will get you up and running with Bokeh, using examples and a real-world dataset. You'll learn how to visualize your data, customize and organize your visualizations, and add interactivity.

Python 3 Installation & Setup Guide

Installing Python on Windows, macOS, and Linux

Darren Jones

Darren Jones 8 Lessons 10m
basics tools

To get started working with Python, you'll need to have access to the Python interpreter. There are several common ways to accomplish this and in this course, you will learn how to install the latest version of Python on your computer.

Intermediate Python

Writing Cleaner Python Code With PyLint

Dan Bader

Dan Bader 8 Lessons 17m
intermediate tools

In this video series you'll see how to install and set up the PyLint code linter tool. You'll learn why you should use code linters like PyLint, Flake8, PyFlakes, or other static analysis tools—and how they can help you write cleaner and more Pythonic code.

Intermediate Python

Python Context Managers and the "with" Statement

Dan Bader

Dan Bader 6 Lessons 12m
intermediate python

In this course you'll learn how context managers and the "with" statement work in Python, including the difference between class-based and function-based context managers.

Make a Location-Based Web App With Django and GeoDjango

Make a Location-Based Web App With Django and GeoDjango

Learn how to use Django and GeoDjango to build a location-based web application from scratch. You’ll be building a simple nearby shops application that lists the shops closest to a user’s location.

Conditional Statements in Python

Conditional Statements in Python (if/elif/else)

Paul Mealus

Paul Mealus 6 Lessons 21m
basics python

In this step-by-step course you'll learn how to work with conditional ("if") statements in Python. Master if-statements step-by-step and see how to write complex decision making code in your programs.

Sending Emails With Python

Sending Emails With Python

In this course, you'll learn how to send emails using Python. Find out how to send plain-text and HTML messages, add files as attachments, and send personalized emails to multiple people. Later on you'll build a CSV-powered email sending script from scratch.

Intermediate Python

Immutability in Python

In Python, immutable vs mutable data types and objects types can cause some confusion—and weird bugs. With this course you'll see what the difference between mutable and immutable data types is in Python, and how you can use it to your advantage in your own programs.

Async IO in Python: A Complete Walkthrough

Hands-On Python 3 Concurrency With the asyncio Module

Chyld Medford

Chyld Medford 12 Lessons 1h 3m
advanced python

Learn how to speed up your Python 3 programs using concurrency and the asyncio module in the standard library. See step-by-step how to leverage concurrency and parallelism in your own programs, all the way to building a complete HTTP downloader example app using asyncio and aiohttp.

Python String Formatting

Python String Formatting Tips & Best Practices

Learn the four main approaches to string formatting in Python, as well as their strengths and weaknesses. You'll also get a simple rule of thumb for how to pick the best general purpose string formatting approach in your own programs.

How to Run Your Python Scripts

Running Python Scripts

Darren Jones

Darren Jones 7 Lessons 18m
basics python

This step-by-step course will guide you through a series of ways to run Python scripts, depending on your environment, platform, needs, and skills as a programmer.

Python Development in Visual Studio Code

Python Development in Visual Studio Code (Setup Guide)

Learn how to set up Visual Studio Code for Python development. By following examples, you'll cover everything from installing and configuring VSCode, to running tests and debugging Python apps.

Pandas Tricks

Idiomatic pandas: Tricks & Features You May Not Know

In this course you'll see how to use some lesser-used but idiomatic pandas capabilities that lend your code better readability, versatility, and speed.

Working With JSON Data in Python

Working With JSON Data in Python

Learn how to work with Python's built-in json module to serialize the data in your programs into JSON format. Then, you'll deserialize some JSON from an online API and convert it into Python objects.

Django Migrations: A Primer

Django Migrations 101

With this course you’ll get comfortable with Django migrations and learn how to create database tables without writing any SQL, how to automatically modify your database after you changed your models, and how to revert changes made to your database.

OOP in Python 3

Intro to Object-Oriented Programming (OOP) in Python

In this video series, you'll learn the fundamentals of object-oriented programming (OOP) in Python and how to work with classes, objects, and constructors.

Python Decorators

Python Decorators 101

In this course on Python decorators, you'll learn what they are and how to create and use them. Decorators provide a simple syntax for calling higher-order functions in Python. By definition, a decorator is a function that takes another function and extends the behavior of the latter function without explicitly modifying it.

Writing Comments in Python (Guide)

Writing Comments in Python

Learn how to write Python comments that are clean, concise, and useful. Quickly get up to speed on what the best practices are, which types of comments it's best to avoid, and how you can practice writing cleaner comments.

Python’s Requests Library (Guide)

Making HTTP Requests With Python

The requests library is the de facto standard for making HTTP requests in Python. It abstracts the complexities of making requests behind a beautiful, simple API so that you can focus on interacting with services and consuming data in your application. This course shows you how to work effectively with requests, from start to finish.

An Introduction to Python Exceptions

Introduction to Python Exceptions

Darren Jones

Darren Jones 3 Lessons 13m
basics python

Learn what exceptions are good for in Python. You'll see how to raise exceptions and how to handle them with "try/except" blocks.

How to Write Beautiful Python Code With PEP 8

Writing Beautiful Pythonic Code With PEP 8

Learn how to write high-quality, readable code by using the Python style guidelines laid out in PEP 8. Following these guidelines helps you make a great impression when sharing your work with potential employers and collaborators. This course outlines the key guidelines laid out in PEP 8. It's aimed at beginner to intermediate programmers.

F-Strings in Python 3.6

Python 3's F-Strings: An Improved String Formatting Syntax

As of Python 3.6, f-strings are a great new way to format strings. Not only are they more readable, more concise, and less prone to error than other ways of formatting, but they are also faster! By the end of this course, you'll know how and why to start using f-strings today.

Python Best Practices Artwork

Idiomatic Python 101

Python Idioms for people coming from other languages and how to improve your idiomatic practices with Python. We will cover things to do with string concatenation, dictionary look ups, dealing with Python scripts and encoding.

13 Project Ideas for Intermediate Python Developers

Pythonic OOP String Conversion: .__repr__() vs .__str__()

Dan Bader

Dan Bader 7 Lessons 13m
intermediate python

In this tutorial series you'll do a deep dive on how Python's to-string conversion using the .__repr__() and .__str__() "magic methods" works and how you can add implement them in your own classes and objects.

Getting Started With Testing in Python

Test-Driven Development With pytest

In this hands-on course, you’ll see how to create Python unit tests, execute them, and find the bugs before your users do. You’ll learn about the tools available to write and execute tests, check your application’s performance, and even look for security issues.

Python Data Science Artwork

Pandas DataFrames 101

Learn the basics of working with the Data Frame data structure in Pandas. We will touch on how to create new columns from existing data, delete unneeded data, how to import data from a CSV file, and more.

Intermediate Python

Emulating switch/case Statements in Python

Dan Bader

Dan Bader 4 Lessons 10m
intermediate python

Python doesn't have switch/case statements so it's often necessary to write long if/elif/else chains as a workaround. Here's a little trick you can use to emulate switch/case statements in Python using dictionaries and first-class functions.

Advanced Python

Migrating Applications From Python 2 to Python 3

Mahdi Yusuf

Mahdi Yusuf 5 Lessons 16m
advanced python

In this course we discuss the process of converting a Python 2 application to Python 3. We go through the entire process of identifying incompatible differences as well as rectifying them. As well as a few migration strategies one might take to convert a Python 2 application to Python 3.

Splitting, Concatenating, and Joining Strings in Python

Splitting, Concatenating, and Joining Strings in Python

Jackie Wilson

Jackie Wilson 4 Lessons 18m
basics python

In this course you'll some of the most fundamental string operations: splitting, concatenating, and joining. Not only will you learn how to use these tools, but you’ll walk away with a deeper understanding of how they work under the hood in Python.

Python "while" Loops (Indefinite Iteration)

Mastering While Loops

Katy Gibson

Katy Gibson 11 Lessons 26m
basics python

Master indefinite iteration using the Python "while" loop. You’ll be able to construct basic and complex while loops, interrupt loop execution with break and continue, use the else clause with a while loop, and deal with infinite loops.

Intermediate Python

Using List Comprehensions Effectively

Dan Bader

Dan Bader 8 Lessons 13m
intermediate python

This short course breaks down Python list comprehensions for you step by step. See how Python's comprehensions can be transformed from and to equivalent "for"-loops so you'll know exactly what's going on behind the scenes.

Python CSV Parsing

Reading and Writing CSV Files

This short course covers how to read and write data to CSV files using Python's built in csv module and the pandas library. You'll learn how to handle standard and non-standard data such as CSV files without headers, or files containing delimeters in the data.

Jupyter Notebook: An Introduction

Using Jupyter Notebooks

In this step-by-step course, you learn how to get started with the Jupyter Notebook, an open source web application that you can use to create and share documents that contain live code, equations, visualizations, and text.

Python "for" Loops (Definite Iteration)

For Loops in Python (Definite Iteration)

Darren Jones

Darren Jones 4 Lessons 16m
basics python

Learn all about how to perform definite iteration with Python "for" loops. You’ll see how other programming languages implement definite iteration, learn about iterables and iterators, and tie it all together to learn about Python’s for loop.

Python Virtual Environments (venv)

Working With Python Virtual Environments

Dan Bader

Dan Bader 6 Lessons 8m
basics tools

This course demonstrates how Python's virtual environments work as a "sandbox" and you get a quick walkthrough on how to set up a new environment (or virtualenv, as they're called for short) and how to install third-party packages into it using the pip command.

Real Python Video Courses

Welcome to Real Python!

Dan Bader

Dan Bader 18 Lessons 46m
basics community

In this series of videos you'll get an overview of the features of the Real Python platform, so you can make the most of your membership. Follow along and get tips on: How to find the most valuable learning resources for your current skill level, how to meet and interact with other students and the RP Team, how to learn effectively, and more.

Got feedback on our courses?