Python:下划线的含义

我终于把Python中下划线的含义弄清楚了(憋了很久了)-腾讯云开发者社区-腾讯云

原文链接:Python:下划线的含义 · 语雀

图案

含义

单引号下划线

_var

表示名称的命名约定仅供内部使用。通常不由Python解释器强制执行(通配符导入除外),并且仅作为对程序员的提示。

单尾划线

var_

按照惯例使用,以避免与Python关键字命名冲突。

双领先下划线

__var

在类上下文中使用时触发名称修饰(外部访问需加“_类名”)。由Python解释器实施。是不能直接通过该名称去访问到的,实现了一定程度上的隔离。

双重领先和落后强调

__var__

表示由Python语言定义的特殊方法。避免为自己的属性使用此命名方案。不会发生名称修饰

单下划线

_

有时用作临时变量或无关紧要变量的名称(“无关紧要”)。

 发生名称修饰:

class Test:
    def __init__(self):
        self.foo = 11
        self._bar = 23
        self.__baz = 42
#实例化这个类并用内置的dir()函数来看看这个对象的属性:
t = Test()
print(dir(t))
print(t._Test__baz) # 在外部访问__baz变量名时,应使用 _类名__变量名即_Test__baz
 

不发生名称修饰: 

class B(object):
    def __init__(self):
        self.__private__=10
t=B()
print(t.__private__) #输出:10

你可能感兴趣的:(Python,python)