By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
AIModelKitAIModelKitAIModelKit
  • Home
  • News
    NewsShow More
    SpaceXAI’s Grok Tool Uploading Users’ Entire Codebase to Cloud Storage: What You Need to Know
    SpaceXAI’s Grok Tool Uploading Users’ Entire Codebase to Cloud Storage: What You Need to Know
    4 Min Read
    New York Leads the Way: First State to Enforce One-Year Moratorium on New AI Data Centers
    New York Leads the Way: First State to Enforce One-Year Moratorium on New AI Data Centers
    4 Min Read
    AI Replacing New York Nurses: Why Patients Should be Concerned About Quality of Care
    AI Replacing New York Nurses: Why Patients Should be Concerned About Quality of Care
    5 Min Read
    Navigating AI Agent Crawlers and Cloudflare’s New Rules: A Comprehensive Guide
    Navigating AI Agent Crawlers and Cloudflare’s New Rules: A Comprehensive Guide
    5 Min Read
    How Apple’s Self-Driving Car Program Paved the Way for Advanced AI Chip Technology
    How Apple’s Self-Driving Car Program Paved the Way for Advanced AI Chip Technology
    4 Min Read
  • Open-Source Models
    Open-Source ModelsShow More
    HiRO-ACEv2: Cost-Effective Simulation of Extreme Weather at 3 km Resolution
    HiRO-ACEv2: Cost-Effective Simulation of Extreme Weather at 3 km Resolution
    5 Min Read
    Unlocking Efficient Autoregressive Video Generation with SemanTok: Predictable Semantic Tokens by Stability AI
    Unlocking Efficient Autoregressive Video Generation with SemanTok: Predictable Semantic Tokens by Stability AI
    5 Min Read
    4Director: Mastering Video World Models with Rigid 3D Geometry | Stability AI Insights
    4Director: Mastering Video World Models with Rigid 3D Geometry | Stability AI Insights
    6 Min Read
    Leveraging Earth AI’s Geospatial Foundation Models to Enhance Global Public Health Initiatives
    Leveraging Earth AI’s Geospatial Foundation Models to Enhance Global Public Health Initiatives
    5 Min Read
    Enhancing AI Image Generation with Diffusion Controller: A Simplified Unified Approach
    Enhancing AI Image Generation with Diffusion Controller: A Simplified Unified Approach
    5 Min Read
  • Guides
    GuidesShow More
    Your Comprehensive Guide to Practical Constraint Decoding: Basics and Applications
    Your Comprehensive Guide to Practical Constraint Decoding: Basics and Applications
    6 Min Read
    KDnuggets Weekly Data Science News Roundup: Highlights from July 20, 2026
    KDnuggets Weekly Data Science News Roundup: Highlights from July 20, 2026
    4 Min Read
    Unlock Your AI Potential with Kaggle and Google’s Free 5-Day Agentic AI Course
    Unlock Your AI Potential with Kaggle and Google’s Free 5-Day Agentic AI Course
    6 Min Read
    Top 5 High-Performance MCP Servers for Optimal Agentic Development
    Top 5 High-Performance MCP Servers for Optimal Agentic Development
    6 Min Read
    Top 5 Free Resources for Understanding Agentic AI: Unlock Your Knowledge
    Top 5 Free Resources for Understanding Agentic AI: Unlock Your Knowledge
    6 Min Read
  • Tools
    ToolsShow More
    Create Local AI Applications Using C++ and NVIDIA TensorRT RTX Samples
    Create Local AI Applications Using C++ and NVIDIA TensorRT RTX Samples
    5 Min Read
    Unlock Near-Astra Intelligence in Your Daily Work with GPT-6.1 Sol on Amazon Bedrock
    Unlock Near-Astra Intelligence in Your Daily Work with GPT-6.1 Sol on Amazon Bedrock
    6 Min Read
    Reproducible Benchmark Results: How UK AISI and EvalEval Are Leading the Way
    Reproducible Benchmark Results: How UK AISI and EvalEval Are Leading the Way
    6 Min Read
    Hugging Face Welcomes Jun Kim, oMLX Creator and Maintainer, to Boost the MLX Community
    Hugging Face Welcomes Jun Kim, oMLX Creator and Maintainer, to Boost the MLX Community
    4 Min Read
    AWS Crowned Leader in The Forrester Wave: AI Infrastructure Solutions, Q4 2025 Report
    AWS Crowned Leader in The Forrester Wave: AI Infrastructure Solutions, Q4 2025 Report
    5 Min Read
  • Events
    EventsShow More
    How European Cities Use NVIDIA-Powered AI Agents for Enhanced Urban Operations
    How European Cities Use NVIDIA-Powered AI Agents for Enhanced Urban Operations
    5 Min Read
    Boosting Everyday Courage in Educational Leaders: A Guide to Choosing Confidence
    Boosting Everyday Courage in Educational Leaders: A Guide to Choosing Confidence
    5 Min Read
    Boosting OpenAI’s GPT-6 Astra Performance: The Role of NVIDIA GPUs in Accelerating AI Technology
    Boosting OpenAI’s GPT-6 Astra Performance: The Role of NVIDIA GPUs in Accelerating AI Technology
    4 Min Read
    Jensen Huang at Dreamforce: ‘Now We Can Know Everything and Achieve Anything’
    Jensen Huang at Dreamforce: ‘Now We Can Know Everything and Achieve Anything’
    5 Min Read
    Essential Strategies for Preparing Students for a Career in Quantum Computing
    Essential Strategies for Preparing Students for a Career in Quantum Computing
    5 Min Read
  • Ethics
    EthicsShow More
    How AI Labs are Acquiring Data from Defunct Startups to Enhance Model Training
    How AI Labs are Acquiring Data from Defunct Startups to Enhance Model Training
    6 Min Read
    UK Enhances Cyber Defenses: Minister Urges AI Firms to Boost Safety Measures
    UK Enhances Cyber Defenses: Minister Urges AI Firms to Boost Safety Measures
    6 Min Read
    Understanding the Side Effects of GLP-1 Weight Loss Drugs: What You Need to Know
    Understanding the Side Effects of GLP-1 Weight Loss Drugs: What You Need to Know
    5 Min Read
    Understanding Withholding Delay: A Welfare Model for Open-Weight AI Releases in Asymmetric Proliferation
    Understanding Withholding Delay: A Welfare Model for Open-Weight AI Releases in Asymmetric Proliferation
    6 Min Read
    Exploring Elon Musk’s Massive Midterm Election Spending Surge
    Exploring Elon Musk’s Massive Midterm Election Spending Surge
    5 Min Read
  • Comparisons
    ComparisonsShow More
    InternBootcamp: Enhancing LLM Reasoning Through Verifiable Task Scaling Techniques
    InternBootcamp: Enhancing LLM Reasoning Through Verifiable Task Scaling Techniques
    4 Min Read
    Enhancing Anomaly Detection in Collider Experiments through Contrastive Learning for Better Interpretability
    Enhancing Anomaly Detection in Collider Experiments through Contrastive Learning for Better Interpretability
    6 Min Read
    Exploring the Impact of Quantization on Self-Explanations in Large Language Models: Can LLMs Explain Themselves?
    Exploring the Impact of Quantization on Self-Explanations in Large Language Models: Can LLMs Explain Themselves?
    5 Min Read
    CytoNet: A Foundation Model for Understanding the Human Cerebral Cortex at Cellular Resolution
    CytoNet: A Foundation Model for Understanding the Human Cerebral Cortex at Cellular Resolution
    5 Min Read
    Optimizing Nonconvex-Nonconcave Min-Max Problems with a Limited Maximization Domain: Insights from [2110.03950]
    Optimizing Nonconvex-Nonconcave Min-Max Problems with a Limited Maximization Domain: Insights from [2110.03950]
    5 Min Read
Search
  • Privacy Policy
  • Terms of Service
  • Contact Us
  • FAQ / Help Center
  • Advertise With Us
  • Latest News
  • Model Comparisons
  • Tutorials & Guides
  • Open-Source Tools
  • Community Events
© 2025 AI Model Kit. All Rights Reserved.
Reading: Mastering Python Naming Conventions: Understanding Single and Double Underscore Usage – Real Python
Share
Notification Show More
Font ResizerAa
AIModelKitAIModelKit
Font ResizerAa
  • 🏠
  • 🚀
  • 📰
  • 💡
  • 📚
  • ⭐
Search
  • Home
  • News
  • Models
  • Guides
  • Tools
  • Ethics
  • Events
  • Comparisons
Follow US
  • Latest News
  • Model Comparisons
  • Tutorials & Guides
  • Open-Source Tools
  • Community Events
© 2025 AI Model Kit. All Rights Reserved.
AIModelKit > Guides > Mastering Python Naming Conventions: Understanding Single and Double Underscore Usage – Real Python
Guides

Mastering Python Naming Conventions: Understanding Single and Double Underscore Usage – Real Python

aimodelkit
Last updated: April 13, 2025 5:58 am
aimodelkit
Share
Mastering Python Naming Conventions: Understanding Single and Double Underscore Usage – Real Python
SHARE

Mastering Python Naming Conventions: The Power of Underscores

Python is celebrated for its clear and readable syntax, which is one of the reasons it has become so popular among developers. A critical aspect of writing clean and maintainable Python code lies in understanding and adhering to its naming conventions. These conventions, particularly those involving underscores, help differentiate between various scopes and purposes of variables and methods. In this article, we will delve into the significance of Python naming conventions, focusing on how underscores can enhance your coding practices.

Contents
  • Understanding Underscore Usage in Python
    • Single Leading Underscore: Indicating Non-Public Attributes
    • Double Leading Underscore: Name Mangling in Action
    • Trailing Underscore: Avoiding Conflicts with Python Keywords
  • Other Common Uses of Underscores in Python Names
  • Engaging with Learning Resources

Understanding Underscore Usage in Python

In Python, underscores serve as powerful tools for expressing the intended use of variables and methods, especially when it comes to distinguishing between public and non-public names in your code. The use of underscores can be categorized into three primary conventions: single leading underscores, double leading underscores, and trailing underscores.

Single Leading Underscore: Indicating Non-Public Attributes

When you prefix a variable or method name with a single underscore (e.g., _variable), it signals to other developers that this name is intended for internal use and should be treated as non-public. While this is merely a convention and does not enforce strict access control, it promotes encapsulation and helps prevent accidental modifications from outside the class.

For instance, consider a class that has both public and private methods. By using a single leading underscore for private methods, you communicate to other developers that these methods are intended for internal use only.

class MyClass:
    def __init__(self):
        self.public_attribute = "I am public"
        self._private_attribute = "I am intended for internal use only"

    def _private_method(self):
        return "This method is private"

Double Leading Underscore: Name Mangling in Action

In contrast to the single leading underscore, a double leading underscore (e.g., __variable) invokes name mangling. This means that the interpreter changes the name of the variable in a way that makes it harder to create subclasses that accidentally override the private attributes and methods.

More Read

Top 10 GitHub Repositories for Mastering Backend Development Skills
Top 10 GitHub Repositories for Mastering Backend Development Skills
Getting Started with DuckDB and Python: A Beginner’s Guide on Real Python
Beginner’s Guide to Python IDLE: Quiz for Real Python Users
Mastering Protocols in Python: A Comprehensive Guide from Real Python
Discover the Zen of Python: Mastering Python Programming with Real Python

For example, if you define a method with a double leading underscore, it will be renamed to _ClassName__methodName to prevent clashes with subclasses.

class BaseClass:
    def __init__(self):
        self.__private_attribute = "I am name mangled"

    def __private_method(self):
        return "This is a private method"

class DerivedClass(BaseClass):
    def __init__(self):
        super().__init__()
        self.__private_attribute = "I am overridden"

# Accessing the name mangled variable
base = BaseClass()
print(base._BaseClass__private_attribute)  # Outputs: I am name mangled

Using double leading underscores effectively allows you to create safe APIs that protect against accidental overrides when subclasses are introduced.

Trailing Underscore: Avoiding Conflicts with Python Keywords

Sometimes, you may want to use a name that conflicts with Python’s built-in keywords or functions. In such cases, appending a trailing underscore (e.g., variable_) is a common convention to avoid syntax errors and maintain clarity.

For example, if you want to use class as a variable name, you can simply add a trailing underscore:

class_ = "This is not a class keyword"

This convention helps maintain readability and ensures that your code remains functional without resorting to less intuitive naming schemes.

Other Common Uses of Underscores in Python Names

Apart from the conventions mentioned above, underscores are used in various other contexts within Python:

  1. Special Methods: Python includes a set of special methods, often referred to as "dunder" methods (double underscore), which allow you to define behaviors for built-in operations. For example, __init__ for object initialization and __str__ for string representation.

  2. Private Variables in Modules: When defining module-level variables, a single leading underscore indicates that the variable is intended for internal use within the module.

  3. Ignoring Variables: When unpacking values, you can use an underscore to ignore certain values. For instance, in tuple unpacking, _ is often used when you don’t need a specific value.
x, _, z = (1, 2, 3)  # Here, 2 is ignored

Engaging with Learning Resources

If you’re eager to dive deeper into Python naming conventions and enhance your coding skills, consider enrolling in a comprehensive video course. This course will provide you with:

  • 20 Lessons: Covering various aspects of naming conventions and underscore usage.
  • Video Subtitles and Full Transcripts: Access to all materials to reinforce your learning.
  • Downloadable Resources: Practical materials to aid your understanding.
  • Text-Based Tutorial: A detailed written guide to accompany the video content.
  • Interactive Quiz: A chance to test your knowledge and reinforce what you’ve learned.
  • Q&A with Python Experts: Get your questions answered by professionals in the field.
  • Certificate of Completion: Showcase your achievement upon finishing the course.

By understanding and applying these naming conventions, you can write Python code that is not only functional but also clean, readable, and maintainable. Embracing these practices will undoubtedly elevate your programming skills and help you collaborate more effectively with other developers in the Python community.

Inspired by: Source

Evolving LLMs: Why You Need to Upgrade Your Skills Now
Unlocking AI Potential: Effective Strategies and Insights from the TDS Newsletter
Mastering File Handling in Python: A Comprehensive Quiz from Real Python
Master Data Management with Python, SQLite, and SQLAlchemy: Quiz from Real Python
Quickly Deploy an AI Analyst: Seamlessly Connect Any LLM to Your Data Sources Using Bag of Words

Sign Up For Daily Newsletter

Get AI news first! Join our newsletter for fresh updates on open-source models.

By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Copy Link Print
Previous Article US Authors Unite: Copyright Lawsuits Against OpenAI and Microsoft Merged with Newspaper Actions in New York US Authors Unite: Copyright Lawsuits Against OpenAI and Microsoft Merged with Newspaper Actions in New York
Next Article The Download: Exploring Military Applications of AI and Its Promises for Climate Solutions The Download: Exploring Military Applications of AI and Its Promises for Climate Solutions

Stay Connected

XFollow
PinterestPin
TelegramFollow
LinkedInFollow

							banner							
							banner
Explore Top AI Tools Instantly
Discover, compare, and choose the best AI tools in one place. Easy search, real-time updates, and expert-picked solutions.
Browse AI Tools

Latest News

HiRO-ACEv2: Cost-Effective Simulation of Extreme Weather at 3 km Resolution
HiRO-ACEv2: Cost-Effective Simulation of Extreme Weather at 3 km Resolution
Open-Source Models
How European Cities Use NVIDIA-Powered AI Agents for Enhanced Urban Operations
How European Cities Use NVIDIA-Powered AI Agents for Enhanced Urban Operations
Events
How AI Labs are Acquiring Data from Defunct Startups to Enhance Model Training
How AI Labs are Acquiring Data from Defunct Startups to Enhance Model Training
Ethics
UK Enhances Cyber Defenses: Minister Urges AI Firms to Boost Safety Measures
UK Enhances Cyber Defenses: Minister Urges AI Firms to Boost Safety Measures
Ethics
//

Leading global tech insights for 20M+ innovators

Quick Link

  • Latest News
  • Model Comparisons
  • Tutorials & Guides
  • Open-Source Tools
  • Community Events

Support

  • Privacy Policy
  • Terms of Service
  • Contact Us
  • FAQ / Help Center
  • Advertise With Us

Sign Up for Our Newsletter

Get AI news first! Join our newsletter for fresh updates on open-source models.

AIModelKitAIModelKit
Follow US
© 2025 AI Model Kit. All Rights Reserved.
Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?