About Brenda Weleschuk
Brenda has a penchant for punctuation as Tutorial Editor for Real Python. She’s had a few past lives as a teacher, technical writer/editor, and instructional designer. When she’s not working with content creators to perfect their tutorials, you’ll find her teaching yoga, hanging with her kids, and exploring the forests and mountains near her home in Calgary, Alberta.
Tutorials by Brenda:
Tutorials Brenda Contributed to:
- How to Find an Absolute Value in Python
- How Can You Structure Your Python Script?
- Control Flow Structures in Python
- Marimo: A Reactive, Reproducible Notebook
- Nested Loops in Python
- How to Group Data Using Polars .group_by()
- How to Get the Most Out of PyCon US
- Python's T-Strings Coming Soon and Other Python News for May 2025
- How to Use Loguru for Simpler Python Logging
- Sets in Python
- Modern Web Automation With Python and Selenium
- Managing Python Projects With uv: An All-in-One Solution
- Getting Started With Python IDLE
- How to Copy Objects in Python: Shallow vs Deep Copy Explained
- How to Exit Loops Early With the Python Break Keyword
- Namespaces in Python
- Using Python's .__dict__ to Work With Attributes
- Python News Roundup: April 2025
- How to Strip Characters From a Python String
- Python's Bytearray: A Mutable Sequence of Bytes
- Introducing DuckDB
- Python Code Quality: Best Practices and Tools
- LangGraph: Build Stateful AI Agents in Python
- Python's Instance, Class, and Static Methods Demystified
- Python Textual: Build Beautiful UIs in the Terminal
- Python News Roundup: March 2025
- Bytes Objects: Handling Binary Data in Python
- Python while Loops: Repeating Tasks Conditionally
- How to Work With Polars LazyFrames
- How to Use sorted() and .sort() in Python
- How to Manage Python Projects With pyproject.toml
- Python News Roundup: February 2025
- Python Keywords: An Introduction
- How to Join Strings in Python
- How to Split a String in Python
- Python for Loops: The Pythonic Way
- Build a Dice-Rolling Application With Python
- Top Python Game Engines
- Develop Data Visualization Interfaces in Python With Dash
- Build a Quiz Application With Python
- Build a Tic-Tac-Toe Game With Python and Tkinter
- Python & APIs: A Winning Combo for Reading Public Data
- Natural Language Processing With spaCy in Python
- A Guide to Modern Python String Formatting Tools
- Providing Multiple Constructors in Your Python Classes
- Split Your Dataset With scikit-learn's train_test_split()
- How to Split a Python List or Iterable Into Chunks
- Python Folium: Create Web Maps From Your Data
- Lists vs Tuples in Python
- Python's Mutable vs Immutable Types: What's the Difference?
- Python's "in" and "not in" Operators: Check for Membership
- Python's zipfile: Manipulate Your ZIP Files Efficiently
- Executing Python Scripts With a Shebang
- Python and TOML: New Best Friends
- How to Download Files From URLs With Python
- Python's raise: Effectively Raising Exceptions in Your Code
- How to Flush the Output of the Python Print Function
- How to Deal With Missing Data in Polars
- Getters and Setters: Manage Attributes in Python
- How to Install Python on Your System: A Guide
- Create and Modify PDF Files in Python
- Python Constants: Improve Your Code's Maintainability
- Python Class Constructors: Control Your Object Instantiation
- Get Started With Django: Build a Portfolio App
- NumPy's max() and maximum(): Find Extreme Values in Arrays
- The subprocess Module: Wrapping Programs With Python
- Understanding the Python Mock Object Library
- Python's min() and max(): Find Smallest and Largest Values
- Build a Personal Diary With Django and Python
- Python's assert: Debug and Test Your Code Like a Pro
- How to Get a List of All Files in a Directory With Python
- Variables in Python: Usage and Best Practices
- How to Write Beautiful Python Code With PEP 8
- Primer on Jinja Templating
- Inheritance and Composition: A Python OOP Guide
- Operators and Expressions in Python
- Python's urllib.request for HTTP Requests
- HTML and CSS for Python Developers
- Python's pathlib Module: Taming the File System
- Image Processing With the Python Pillow Library
- Iterators and Iterables in Python: Run Efficient Iterations
- How to Remove Items From Lists in Python
- Strings and Character Data in Python
- How to Flatten a List of Lists in Python
- Working With JSON Data in Python
- Using Python's pip to Manage Your Projects' Dependencies
- Basic Data Types in Python: A Quick Exploration
- Get Started With Django User Management
- Dictionaries in Python
- Python's property(): Add Managed Attributes to Your Classes
- Dependency Management With Python Poetry
- Python Classes: The Power of Object-Oriented Programming
- Object-Oriented Programming (OOP) in Python
- Build Enumerations of Constants With Python's Enum
- YAML: The Missing Battery in Python
- The Walrus Operator: Python's Assignment Expressions
- Sorting a Python Dictionary: Values, Keys, and More
- Primer on Python Decorators
- Build Command-Line Interfaces With Python's argparse
- Python Set Comprehensions: How and When to Use Them
- Python News Roundup: December 2024
- How to Run Your Python Scripts and Code
- Python Timer Functions: Three Ways to Monitor Your Code
- Using and Creating Global Variables in Your Python Functions
- Effective Python Testing With pytest
- Asynchronous Tasks With Django and Celery
- Python GUI Programming With Tkinter
- How to Round Numbers in Python
- Linear Regression in Python
- When to Use a List Comprehension in Python
- Socket Programming in Python (Guide)
- Expression vs Statement in Python: What's the Difference?
- Basic Input and Output in Python
- Python Exceptions: An Introduction
- Beautiful Soup: Build a Web Scraper With Python
- How to Check if a Python String Contains a Substring
- Python String Formatting: Available Tools and Their Features
- Python's F-String for String Interpolation and Formatting
- Logging in Python
- Python Virtual Environments: A Primer
- Continuous Integration and Deployment for Python With GitHub Actions
- Speed Up Your Python Program With Concurrency
- Efficient String Concatenation in Python
- Python range(): Represent Numerical Ranges
- How to Iterate Through a Dictionary in Python
- NumPy Practical Examples: Useful Techniques
- Interacting With Python
- Using the Python zip() Function for Parallel Iteration
- Using the len() Function in Python
- Python Dictionary Comprehensions: How and When to Use Them
- Python News Roundup: November 2024
- How to Reset a pandas DataFrame Index
- The Python Square Root Function
- Python Closures: Common Use Cases and Examples
- Python Thread Safety: Using a Lock and Other Techniques
- Structural Pattern Matching in Python
- Syntactic Sugar: Why Python Is Sweet and Pythonic
- Build a Contact Book App With Python, Textual, and SQLite
- Python News Roundup: October 2024
- Python 3.13: Cool New Features for You to Try
- Python 3.13 Preview: A Modern REPL
- Python 3.13 Preview: Free Threading and a JIT Compiler
- How to Use Conditional Expressions With NumPy where()
- Python News Roundup: September 2024
- Generate Images With DALL·E and the OpenAI API
- Web Scraping With Scrapy and MongoDB
- Python News Roundup: August 2024
- Asynchronous Iterators and Iterables in Python
- Functional Programming in Python: When and How to Use It
- How to Write an Installable Django App
- Hugging Face Transformers: Leverage Open-Source AI in Python
- Python Protocols: Leveraging Structural Subtyping
- How Do You Choose Python Function Names?
- Python News Roundup: July 2024
- Python's Built-in Functions: A Complete Exploration
- Creating Great README Files for Your Python Projects
- Build a Guitar Synthesizer: Play Musical Tablature in Python
- Ruff: A Modern Python Linter for Error-Free and Maintainable Code
- Python Mappings: A Comprehensive Guide
- Python News: What's New From May 2024
- String Interpolation in Python: Exploring Available Tools
- What Are CRUD Operations?
- How to Create Pivot Tables With pandas
- The Python calendar Module: Create Calendars With Python
- Python's Built-in Exceptions: A Walkthrough With Examples
- What Is the __pycache__ Folder in Python?
- PyTorch vs TensorFlow for Your Python Deep Learning Project
- Python News: What's New From April 2024
- Python Sequences: A Comprehensive Guide
- Python's unittest: Writing Unit Tests for Your Code
- What's Lazy Evaluation in Python?
- Write Unit Tests for Your Python Code With ChatGPT
- How to Format Floats Within F-Strings in Python
- Build a Blog Using Django, GraphQL, and Vue
- Pydantic: Simplifying Data Validation in Python
- Python News: What's New From March 2024
- Install and Execute Python Applications Using pipx
- Reading and Writing WAV Files in Python
- Prompt Engineering: A Practical Example
- Build a Python Turtle Game: Space Invaders Clone
- Model-View-Controller (MVC) in Python Web Apps: Explained With Lego
- Python News: What's New From February 2024
- Build an LLM RAG Chatbot With LangChain
- The Python return Statement: Usage and Best Practices
- Execute Your Python Scripts With a Shebang (Course)
- The LEGB Rule & Understanding Python Scope (Course)
- First Steps With LangChain (Course)
- Working With Missing Data in Polars (Course)
- Using the Python subprocess Module (Course)
- Thread Safety in Python: Locks and Other Techniques (Course)
- MySQL Databases and Python (Course)
- Creating a Python Dice Roll Application (Course)
- Checking for Membership Using Python's "in" and "not in" Operators (Course)
- Building a Code Image Generator With Python (Course)
- What Can You Do With Python? (Course)
- Using Structural Pattern Matching in Python (Course)
- Getting to Know Duck Typing in Python (Course)
- Working With Python Polars (Course)
- Single and Double Underscore Naming Conventions in Python (Course)
- Concatenating Strings in Python Efficiently (Course)
- Building a Python Command-Line To-Do App With Typer (Course)
- NumPy Techniques and Practical Examples (Course)
- Creating a Scalable Flask Web Application From Scratch (Course)
- Exploring Python's tuple Data Type With Examples (Course)
- Building Dictionary Comprehensions in Python (Course)
- Ways to Start Interacting With Python (Course)
- Programming Sockets in Python (Course)
- Handling or Preventing Errors in Python: LBYL vs EAFP (Course)
- Managing Dependencies With Python Poetry (Course)
- Working With TOML and Python (Course)
- Formatting Floats Inside Python F-Strings (Course)
- Introduction to Web Scraping With Python (Course)
- Python's Magic Methods in Classes (Course)
- Understanding Python's Global Interpreter Lock (GIL) (Course)
- Using Type Hints for Multiple Return Types in Python (Course)
- What's New in Python 3.13 (Course)
- Differences Between Python's Mutable and Immutable Types (Course)
- Advanced Python import Techniques (Course)
- Customizing VS Code Through Color Themes (Course)
- Using Pydantic to Simplify Python Data Validation (Course)
- Using Astropy for Astronomy With Python (Course)
- Exploring Astrophysics in Python With pandas and Matplotlib (Course)
- Sorting Dictionaries in Python: Keys, Values, and More (Course)
- Interacting With REST APIs and Python (Course)
- Simulate a Text File in Python (Course)
- pandas GroupBy: Grouping Real World Data in Python (Course)
- Exercises Course: Introduction to Web Scraping With Python (Course)
- Customize VS Code Settings (Course)
- Defining Python Constants for Code Maintainability (Course)
- Build a GUI Calculator With PyQt and Python (Course)
- Rounding Numbers in Python (Course)
- Listing All Files in a Directory With Python (Course)
- Python Interfaces: Object-Oriented Design Principles (Course)
- Efficient Iterations With Python Iterators and Iterables (Course)
- Building a Python GUI Application With Tkinter (Course)
- HTML and CSS Foundations for Python Developers (Course)
- Flattening a List of Lists in Python (Course)
- Working With Global Variables in Python Functions (Course)
- Python Basics Exercises: Scopes (Course)
- Using raise for Effective Exceptions (Course)