Episode 180: Studying Python Software Architecture & Creating Lambda Expressions
The Real Python Podcast
Nov 10, 2023 48m
Have you moved through the fundamentals of Python, and are you now considering building a more extensive project or complete application? Where can you study the architecture of existing Python projects and learn best practices? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.
Episode Sponsor:
We discuss a set of resources that developers can study to learn how to structure projects. The collection was shared in a blog post titled “Great Resources a Beginner Might Not Find So Easily.” It includes a pair of books on the architecture of large software applications and another aimed at more modest projects.
We consider when you should use lambda expressions in your Python code. These one-line expressions create anonymous functions. How do they differ from standard functions, and where is it appropriate to use them?
We also share several other articles and projects from the Python community, including a couple of release announcements, an explanation of Python as a compiled language, a discussion covering the controversy about the recent Flask release, a project for writing less Selenium code, and a project to create ASCII art with Python.
This week’s episode is brought to you by Site24x7.
Course Spotlight: 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.
Topics:
- 00:00:00 – Introduction
- 00:02:50 – PyCon US 2024 Call for Proposals
- 00:03:18 – Django 5.0 Beta 1 Released
- 00:03:29 – Django security releases issued: 4.2.7, 4.1.13, and 3.2.23
- 00:03:51 – The Ruff Formatter: Python’s Fastest Formatter
- 00:04:50 – What Are Lambda Expressions?
- 00:12:01 – Sponsor: Site24x7.com
- 00:12:56 – Python Is a Compiled Language
- 00:16:01 – Great Resources a Beginner Might Not Find So Easily
- 00:27:01 – Video Course Spotlight
- 00:28:32 – We Have to Talk About Flask
- 00:41:46 – selenium-python-helium: Write Less Selenium Code
- 00:45:23 – pyfiglet: An implementation of figlet written in Python
- 00:47:17 – Thanks and goodbye
News:
- PyCon US 2024 Call for Proposals
- Django 5.0 Beta 1 Released
- Django security releases issued: 4.2.7, 4.1.13, and 3.2.23 | Weblog | Django
- The Ruff Formatter: Python’s Fastest Formatter – You may have come across Ruff, a linter that’s been on the scene for about a year. Well, it recently added formatting to its features. This article shows you how, including the configuration option to allow single-quote style.
Show Links:
- What Are Lambda Expressions? – This post teaches you what lambda expressions are and how they get used in Python. It shows several examples and also covers when to avoid lambda expressions.
- Python Is a Compiled Language – Python is interpreted, but it interprets compiled code. This distinction can be confusing to students, and this instructor does a deep dive on where the line between the concepts sits.
- Great Resources a Beginner Might Not Find So Easily – Are you having trouble making the modules work together in a larger project? Have you tried looking at popular projects as models, but did their size and scope put you off? Did you find it hard to see why they did what they did? Resources about this do exist, but they’re scattered all over…unless you know where to look.
- We Have to Talk About Flask – The most recent release of Flask and Werkzeug have introduced backward incompatible changes that are affecting popular add-ons. Miguel writes about how this is a common occurrence and why it keeps happening.
Discussion:
- Armin Ronacher on X: Flask today is a different framework than the one I have created
- Some More To Talk About Flask - miguelgrinberg.com
- We Have to Talk About Flask - Hacker News
- Episode #18: Ten Years of Flask: Conversation With Creator Armin Ronacher - The Real Python Podcast
Projects:
- selenium-python-helium: Write Less Selenium Code
- pyfiglet: An implementation of figlet written in Python - PyPI
Additional Links:
- Lambdas - Expressions - Python 3.12.0 documentation
- How to Use Python Lambda Functions - Real Python
- The Architecture of Open Source Applications
- Episode #9: Leveling Up Your Python Literacy and Finding Python Projects to Study - The Real Python Podcast
- Episode #62: Selecting the Ideal Data Structure & Unravelling Python’s “pass” and “with” - The Real Python Podcast
- asciimatics - PyPI