The Real Python Podcast

Comparing Real-World Python Performance Against Big O


Listen Later

How does the performance of an algorithm hold up when you put it into a realistic context? Where might Python code defy Big O notation expectations when using a profiler? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.

Christopher shares an article about why real-world performance often defies Big O expectations. The piece starts with a task coded in Go and then optimized from O(n²) to O(n). Can an interpreted language like Python compete with a compiled language? Profiling the performance of both versions provides some interesting results.

We also share several other articles and projects from the Python community, including a news roundup, the fastest way to detect a vowel in a string, whether Python dictionaries are ordered data structures, an overview of Python’s enum module, a Python client library for Google Data Commons, and a project to convert plain ASCII to “smart” punctuation.

Course Spotlight: 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 in the Python standard library.

Topics:

  • 00:00:00 – Introduction
  • 00:02:12 – ruff Release 0.12.0
  • 00:02:38 – streamlit Release 1.46.0
  • 00:02:48 – lxml 6.0.0 Released
  • 00:03:00 – PSF Board Election Schedule
  • 00:03:26 – Are Python Dictionaries Ordered Data Structures?
  • 00:08:59 – The Fastest Way to Detect a Vowel in a String
  • 00:16:37 – Module enum Overview
  • 00:24:46 – Video Course Spotlight
  • 00:26:24 – O(no) You Didn’t
  • 00:38:34 – New Python Client Library for Google Data Commons
  • 00:41:55 – smartypants.py: Plain ASCII to “Smart” Punctuation
  • 00:44:07 – Thanks and goodbye
  • News:

    • ruff Release 0.12.0
    • streamlit Release 1.46.0
    • lxml 6.0.0 Released
    • PSF Board Election Schedule – It is time for the Python Software Foundation Board elections. Nominations are due by July 29th. See the article for the full election schedule and deadlines.
    • Show Links:

      • Are Python Dictionaries Ordered Data Structures? – Although dictionaries have maintained insertion order since Python 3.6, they aren’t strictly speaking ordered data structures. Read on to find out why and how the edge cases can be important depending on your use case.
      • The Fastest Way to Detect a Vowel in a String – If you need to find the vowels in a string there are several different approaches you could take. This article covers 11 different ways and how each performs.
      • Module enum Overview – This article gives an overview of the tools available in the module enum and how to use them, including Enum, auto, StrEnum, Flag, and more.
      • O(no) You Didn’t – A deep dive into why real-world performance often defies Big-O expectations, and why context and profiling matter more than theoretical complexity.
      • Projects:

        • New Python Client Library for Google Data Commons – Google Data Commons announced the general availability of its new Python client library for the Data Commons. The goal of the library is to enhance how students, researchers, analysts, and data scientists access and leverage Data Commons.
        • smartypants.py: Plain ASCII to “Smart” Punctuation
        • Additional Links:

          • Betteridge’s Law
          • collections — Container datatypes — Python 3.13.5 documentation
          • OrderedDict vs dict in Python: The Right Tool for the Job – Real Python
          • Build Enumerations of Constants With Python’s Enum – Tutorial
          • Building Enumerations With Python’s enum - Video Course
          • Python client library for the Data Commons
          • PyCoder’s Weekly - Submit a Link
          • Level up your Python skills with our expert-led courses:

            • Looping With Python enumerate()
            • Sorting Dictionaries in Python: Keys, Values, and More
            • Building Enumerations With Python's enum
            • Support the podcast & join our community of Pythonistas

              ...more
              View all episodesView all episodes
              Download on the App Store

              The Real Python PodcastBy Real Python

              • 4.7
              • 4.7
              • 4.7
              • 4.7
              • 4.7

              4.7

              138 ratings


              More shows like The Real Python Podcast

              View all
              Software Engineering Radio by se-radio@computer.org

              Software Engineering Radio

              273 Listeners

              The Changelog: Software Development, Open Source by Changelog Media

              The Changelog: Software Development, Open Source

              292 Listeners

              Software Engineering Daily by Software Engineering Daily

              Software Engineering Daily

              623 Listeners

              Talk Python To Me by Michael Kennedy

              Talk Python To Me

              585 Listeners

              Thoughtworks Technology Podcast by Thoughtworks

              Thoughtworks Technology Podcast

              42 Listeners

              Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

              Super Data Science: ML & AI Podcast with Jon Krohn

              303 Listeners

              Python Bytes by Michael Kennedy and Brian Okken

              Python Bytes

              214 Listeners

              Data Engineering Podcast by Tobias Macey

              Data Engineering Podcast

              146 Listeners

              Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

              Syntax - Tasty Web Development Treats

              983 Listeners

              CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

              CoRecursive: Coding Stories

              189 Listeners

              DataFramed by DataCamp

              DataFramed

              268 Listeners

              Kubernetes Podcast from Google by Abdel Sghiouar, Kaslin Fields

              Kubernetes Podcast from Google

              182 Listeners

              Practical AI by Practical AI LLC

              Practical AI

              212 Listeners

              AWS Podcast by Amazon Web Services

              AWS Podcast

              201 Listeners

              The Stack Overflow Podcast by The Stack Overflow Podcast

              The Stack Overflow Podcast

              62 Listeners