The Real Python Podcast

Using Virtual Environments in Docker & Comparing Python Dev Tools


Listen Later

Should you use a Python virtual environment in a Docker container? What are the advantages of using the same development practices locally and inside a container? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.

We share a recent post by Hynek Schlawack about building Python projects using Docker containers. Hynek argues for using virtual environments for these projects, like developing a local one. He’s found that keeping your code in an isolated, well-defined location and structure avoids confusion and complexity.

We also discuss our development setups, including Python versions, code editors, virtual environment practices, terminals, and customizations. We dig into how your programming history affects the tools you use.

We share several other articles and projects from the Python community, including a group of new releases, addressing the “why” in comments, comparing a data science workflow in Python and R, removing common problems from CSV files, and a project for creating HTML tables in Django.

This episode is sponsored by InfluxData.

Course Spotlight: Advanced Python import Techniques

The Python import system is as powerful as it is useful. In this in-depth video course, you’ll learn how to harness this power to improve the structure and maintainability of your code.

Topics:

  • 00:00:00 – Introduction
  • 00:02:55 – Python Releases 3.12.6, 3.11.10, 3.10.15, 3.9.20, and 3.8.20
  • 00:03:26 – Python Release Python 3.13.0rc2
  • 00:04:07 – Django Security Releases Issued: 5.1.1, 5.0.9, and 4.2.16
  • 00:04:36 – Polars Has a New Lightweight Plotting Backend
  • 00:05:49 – Why I Still Use Python Virtual Environments in Docker
  • 00:11:37 – How to Use Conditional Expressions With NumPy where()
  • 00:15:55 – Sponsor: InfluxData
  • 00:16:39 – PythonistR: A Match Made in Data Heaven
  • 00:23:44 – Why Not Comments
  • 00:26:48 – Video Course Spotlight
  • 00:28:10 – Discussion: Personal development setups
  • 00:51:01 – csv_trimming: Remove Common Ugliness From CSV Files
  • 00:53:01 – django-tables2: Create HTML Tables in Django
  • 00:54:39 – Thanks and goodbye
  • News:

    • Python Releases 3.12.6, 3.11.10, 3.10.15, 3.9.20, and 3.8.20
    • Python Release Python 3.13.0rc2
    • Django Security Releases Issued: 5.1.1, 5.0.9, and 4.2.16
    • Show Links:

      • Polars Has a New Lightweight Plotting Backend – Polars 1.6 allows you to natively create beautiful plots without pandas, NumPy, or PyArrow. This is enabled by Narwhals, a lightweight compatibility layer between dataframe libraries.
      • Why I Still Use Python Virtual Environments in Docker – Hynek often gets challenged when he suggests the use of virtual environments within Docker containers, and this post explains why he still does.
      • How to Use Conditional Expressions With NumPy where() – This tutorial teaches you how to use the where() function to select elements from your NumPy arrays based on a condition. You’ll learn how to perform various operations on those elements and even replace them with elements from a separate array or arrays.
      • PythonistR: A Match Made in Data Heaven – In data science you’ll sometimes hear a debate between R and Python. Cosima says ‘why not choose both?’ She outlines a data pipeline that uses the best tool for each job.
      • Why Not Comments – This post talks about why you might want to include information in your code comments about why you didn’t take a particular approach.
      • Discussion:

        • Editors & IDEs – Real Python
        • Visual Studio Code - Code Editing. Redefined
        • Project Jupyter - Home
        • vim online: welcome home
        • iTerm2 - macOS Terminal Replacement
        • Projects:

          • csv_trimming: Remove Common Ugliness From CSV Files
          • django-tables2: Create HTML Tables in Django
          • Additional Links:

            • virtualenv Lives! - Hynek Schlawack - 2014
            • Production-ready Python Docker Containers with uv - Hynek Schlawack
            • r-python-talk: 🦸🏼‍♀️ Contains material for talk on how to use Python and R together
            • Download RStudio - Posit
            • Logic for Programmers by Hillel Wayne - Leanpub
            • Level up your Python skills with our expert-led courses:

              • Using Jupyter Notebooks
              • Absolute vs Relative Imports in Python
              • Advanced Python import Techniques
              • 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

                136 ratings


                More shows like The Real Python Podcast

                View all
                Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

                Software Engineering Radio - the podcast for professional software developers

                272 Listeners

                The Changelog: Software Development, Open Source by Changelog Media

                The Changelog: Software Development, Open Source

                283 Listeners

                Data Skeptic by Kyle Polich

                Data Skeptic

                481 Listeners

                Talk Python To Me by Michael Kennedy

                Talk Python To Me

                592 Listeners

                Software Engineering Daily by Software Engineering Daily

                Software Engineering Daily

                624 Listeners

                The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence) by Sam Charrington

                The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence)

                443 Listeners

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

                Super Data Science: ML & AI Podcast with Jon Krohn

                296 Listeners

                Python Bytes by Michael Kennedy and Brian Okken

                Python Bytes

                213 Listeners

                Data Engineering Podcast by Tobias Macey

                Data Engineering Podcast

                142 Listeners

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

                Syntax - Tasty Web Development Treats

                982 Listeners

                CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

                CoRecursive: Coding Stories

                189 Listeners

                DataFramed by DataCamp

                DataFramed

                266 Listeners

                Practical AI by Practical AI LLC

                Practical AI

                189 Listeners

                The Stack Overflow Podcast by The Stack Overflow Podcast

                The Stack Overflow Podcast

                64 Listeners

                Latent Space: The AI Engineer Podcast by swyx + Alessio

                Latent Space: The AI Engineer Podcast

                77 Listeners