Authors: Jason Olson, Bo Milanovich, Austin Bingham, Robert Smallshire, Sarah Holderness, Reindert-Jan Ekker, Emily Bache, Tom Bell, Terry Toy

Python is an interpreted object-oriented programming language. It is open source, so the interpreter and source are freely available and distributable in binary form. Python has... Read more

What you will learn

  • Syntax
  • Python objects
  • Scalar types
  • Operators
  • String I/O
  • Functions
  • Python modules
  • Collections
  • Python best practices


Basic familiarity with the fundamental concepts of programming HTML


Are you a programming beginner? Maybe you've just started, or maybe you've taken a couple of entry-level programming classes and want to learn more. The beginner courses here will show you the basics of object-oriented programming (OOP) while teaching you the simple and functional Python programming language. When you've completed this section, you'll be ready to move on to improving your code quality.

Python: The Big Picture

by Jason Olson

Jan 26, 2018 / 1h 5m

1h 5m

Start Course

At the heart of creating software is being able to use the right tool for the right job. In this course, Python: The Big Picture, you'll learn about the Python programming language. First, you'll learn what Python is, what makes it different, and why you should care. Next, you'll explore the different ways Python is being used to develop different types of applications today. Finally, you'll discover how to get started working with Python code and what next steps you can take in your Python journey. When you're finished with this course, you'll have a foundational knowledge of Python that will help you as you move forward to recognizing when Python is the right tool for any future jobs you are faced with as a software developer.

Table of contents
  1. Course Overview1m
  2. What Is Python?15m
  3. When and Where Is Python Being Used?23m
  4. First Steps with Python12m
  5. Continuing Your Python Journey12m

Python: Getting Started

by Bo Milanovich

Apr 27, 2017 / 2h 59m

2h 59m

Start Course

Hello, and welcome to Python: Getting Started, part of the Python Learning Path here at Pluralsight. My name is Bo Milanovich, and I’m looking forward to helping you learn this powerful and versatile language. Along the way, you’re going to be learning about things like syntax, functions, and classes, exploring how to create a console application and how to convert that same app into a web app, as well learn how to create executable files and an installation wizard from your Python app. In addition to Python, you’ll also be using Flask and Pycharm. This is a beginner-friendly course, but you’ll want to make sure you’re already up to speed on programming basics, such as what a function does and what a variable is. So if you’re ready to get going, Python: Getting Started is waiting for you. Thanks again for visiting me here at Pluralsight!

Table of contents
  1. Course Overview1m
  2. Introduction20m
  3. Types, Statements, and Other Goodies53m
  4. Functions, Files, Yield, and Lambda35m
  5. Object Oriented Programming - Classes and Why Do We Need Them?35m
  6. Putting It All Together - Let’s Make It a Web App11m
  7. Python Tips and Tricks22m

Python Fundamentals

by Austin Bingham

Sep 26, 2017 / 5h 11m

5h 11m

Start Course

Python Fundamentals gets you started with Python, a dynamic language popular for web development, big data, science, and scripting. What’s so great about Python? Python is powerful. The Python language is expressive and productive, it comes with a great standard library, and it’s the center of a huge universe of wonderful third-party libraries. With Python you can build everything from simple scripts to complex applications, you can do it quickly, and you can do it with fewer lines of code than you might think possible. But for many people those reasons take back-seat to something more important: Python is fun! Python’s readable style, quick edit-and-run development cycle, and “batteries included” philosophy mean that you can sit down and enjoy writing code rather than fighting compilers and thorny syntax. As your experiments become prototypes and your prototypes become products, Python makes the experience of writing software not just easier but truly enjoyable. In the words of Randall Munroe, "Come join us! Programming is fun again!"

Table of contents
  1. Introduction to the Python Fundamentals Course13m
  2. Getting Starting With Python 342m
  3. Strings and Collections17m
  4. Modularity21m
  5. Objects21m
  6. Collections44m
  7. Handling exceptions22m
  8. Iterables32m
  9. Classes29m
  10. Files and Resource Management31m
  11. Shipping Working and Maintainable Code33m

Python: Variables, Data Types, and Conditionals

by Sarah Holderness

Jun 1, 2018 / 1h 29s

1h 29s

Start Course

Explore the basics of Python and learn what it means to store and manipulate numbers and words as well as make decisions with your program. This interactive course was formerly known as Try Python on Code School.

Table of contents
  1. Birds & Coconuts2 Videos - 0 Challenge
  2. Spam & Strings2 Videos - 4 Challenges
  3. Conditional Rules of Engagement2 Videos - 4 Challenges

Python: Using Lists, Dictionaries, Loops, Files, and Modules

by Sarah Holderness

Oct 1, 2018 / 2h 18m

2h 18m

Start Course

Explore more Python basics and use them to help manage our circus and its Spam Van food truck. This interactive course was formerly known as Flying Through Python on Code School.

Table of contents
  1. Lists and Dictionaries3 Videos - 4 Challenges
  2. Loops3 Videos - 5 Challenges
  3. Functions3 Videos - 5 Challenges
  4. Reading and Writing Files3 Videos - 5 Challenges
  5. Modules2 Videos - 2 Challenges


The intermediate courses you see here will teach you to improve your code. You'll dive deeper into unit testing and debugging, as well as learn some of the more advanced features of the Python language.

Python – Beyond the Basics

by Austin Bingham

Jul 18, 2014 / 7h 22m

7h 22m

Start Course

Python – Beyond the Basics builds directly on the foundations laid in our introductory Python course, Python Fundamentals. Python is a great dynamic language for web development, big data, science, and scripting. In this course we add breadth and depth to your Python skills, exploring the topics you'll need to create robust and readable applications of any size. On completing this course, you'll be familiar with the majority of Python techniques and constructs used in Python programs. Crucially, we'll also advise you on when – and when not – to use the different tools available in Python to best effect, to maximize the quality of your code, your productivity, and the joy inherent in coding in Python.

Table of contents
  1. Prerequisites5m
  2. Organizing Larger Programs30m
  3. Beyond Basic Functions32m
  4. Closures and Decorators36m
  5. Properties and Class Methods40m
  6. Strings and Representations18m
  7. Numeric and Scalar Types1h 2m
  8. Iterables and Iteration29m
  9. Inheritance and Subtype Polymorphism36m
  10. Implementing Collections52m
  11. Exceptions and Errors37m
  12. Defining Context Managers29m
  13. Introspection29m

The Python Developer's Toolkit

by Reindert-Jan Ekker

Jul 18, 2014 / 2h 19m

2h 19m

Start Course

Becoming a professional Python developer means knowing more than just the language. Once you make the transition from simple scripts to larger projects, it becomes important to know the tools of the trade and how to use them. This course introduces you to a set of standard tools. We'll see how to install and manage your project's dependencies and how to set up your development environment. Then we'll go into code quality, debugging and documentation. Finally, we'll see how to package and distribute the final product.

Table of contents
  1. Introduction3m
  2. Managing Python Packages22m
  3. Isolated Development Environments With Virtualenv21m
  4. Checking Your Code Quality With Pylint18m
  5. The Python Debugger19m
  6. Documenting Your Code With Sphinx30m
  7. Packaging and Distributing Your Project21m

Unit Testing with Python

by Emily Bache

Nov 1, 2013 / 2h 58m

2h 58m

Start Course

This course follows on from the Pluralsight "Python Fundamentals" course, and has more detail about unit testing with Python. We will cover libraries and frameworks such as unittest, doctest and py.test. The aim is to help you to write unit tests that improve code quality, and also support future development. Good unit tests should provide immediate value in terms of reduced debugging and better design, and the investment writing them should pay back over the whole lifetime of your software.

Table of contents
  1. Unit Testing with Python - Basic Example Using unittest34m
  2. Why and When Should You Write Unit Tests?23m
  3. Using Pytest for Unit Testing in Python22m
  4. Testable Documentation with Doctest29m
  5. Test Doubles: Mocks, Fakes and Stubs40m
  6. Test Coverage and Parameterized Tests27m

Build a Job Board with Python & Flask

by Tom Bell

Sep 27, 2018 / 2h 35m

2h 35m

Start Project

Python & Flask are great for building a simple website. In this project, you'll use them to build a simple job board. The main page of the site will show all jobs and each job and employer will have dedicated pages. Users will also be able to review each employer.

Project overview
  1. Setup15m
  2. Flask Setup10m
  3. Base Template and Styling15m
  4. Preparing for Dynamic Content30m
  5. Display All Jobs30m
  6. Display Individual Jobs15m
  7. Display Individual Employers25m
  8. Employer Reviews15m


Our advanced Python track will show you how you can apply your newfound skill. You'll learn full-stack web development, as well as some techniques that will help you implement advanced frameworks.

Full Stack Web Development with Python (WEB2PY)

by Terry Toy

Aug 21, 2015 / 3h 2m

3h 2m

Start Course

Learn full stack web development using Python and WEB2PY. WEB2PY is an easy to learn, integrate framework that includes a web server, admin, bootstap, and sqlite database. One simple download has everything you need to build robust, data driven web applications. This project-based course is for beginners new to web development or those who want to quickly learn a Python web framework.

Table of contents
  1. Introduction9m
  2. Build & Deploy Our First Web Page31m
  3. Full Stack Web Development Python WEB2PY23m
  4. Database Administration20m
  5. Filtering, Sorting, Updating Records16m
  6. Role Based Access Control14m
  7. Relational Database Concepts24m
  8. Miscellaneous Topics18m
  9. Farm Fresh Sample App22m

Advanced Python

by Robert Smallshire

Jun 24, 2017 / 3h 53m

3h 53m

Start Course

Over time, Python has exploded in popularity, from being an obscure scripting language to becoming one of the most popular, and widely used languages in the world. In this course, Advanced Python, you'll learn advanced topics, a knowledge of which will set you apart from the greater number of Python developers. First, you'll explore how to gain fine-grained control over attribute access. Next, you'll discover how to intercept class-object construction. Finally, you'll learn the subtle, but powerful, controls Python gives you over class relationships. By the end of this course, you'll know enough Python to understand the advanced techniques used to implement sophisticated frameworks and much more.

Table of contents
  1. Course Overview2m
  2. Advanced Flow Control42m
  3. Byte-oriented Programming42m
  4. Object Internals and Custom Attributes30m
  5. Descriptors22m
  6. Instance Creation10m
  7. Metaclasses36m
  8. Class Decorators11m
  9. Abstract Base Classes33m
Offer Code *
Email * First name * Last name *
Country *

* Required field

Opt in for the latest promotions and events. You may unsubscribe at any time. Privacy Policy

By activating this benefit, you agree to abide by Pluralsight's terms of use and privacy policy.

I agree, activate benefit