Hint: You can adjust the default video playback speed in your account settings.
Hint: You can set the default subtitles language in your account settings.
Sorry! Looks like there’s an issue with video playback 🙁 This might be due to a temporary outage or because of a configuration issue with your browser. Please see our video player troubleshooting guide to resolve the issue.

Cool New Features in Python 3.8: Overview

In this course, you’ll get a look into the newest version of Python. On October 14th, 2019 the first official version of Python 3.8 became ready.

What does Python 3.8 bring to the table? The documentation gives a good overview of the new features. However, this course will go more in depth on some of the biggest changes and show you how you can take advantage of Python 3.8.

You’ll learn about the following:

  • Using assignment expressions to simplify some code constructs
  • Enforcing positional-only arguments in your own functions
  • Specifying more precise type hints
  • Using f-strings for simpler debugging

With a few exceptions, Python 3.8 contains many small improvements over the earlier versions. Towards the end of the course, you’ll see many of these less attention-grabbing changes, as well as a discussion about some of the optimizations that make Python 3.8 faster than its predecessors.

If you want to learn more, additional resources will be referenced and linked to throughout the course.

To download the code in this course, click the link below:


Sample Code (.zip)

11.4 KB

To download the slides in this course, click the link below:


Course Slides (PDF)

989.8 KB

Dan Bader RP Team on Nov. 29, 2019

Hey folks, if you’re new to Real Python and you’re wondering how our course platform and other features work, click here to check out our Welcome to Real Python course. Happy Pythoning! :)

umesh191994uk on Dec. 2, 2019

Thanks! You guys are awesome.

chomaanyu on Dec. 2, 2019

is python 3.8 backward compatible?

Geir Arne Hjelle RP Team on Dec. 2, 2019

Essentially: Yes, Python 3.8 is backwards compatible.

With the exception of a few deprecated functions that have been removed all Python 3.7 code should work on 3.8 as well.

The other way around: if you use any of the new syntax like assignment expressions, positional-only parameters, or f-string debugging, those will naturally not work in older Python versions.

Become a Member to join the conversation.