python 类中的单下划线和双下划线的意义

简介:
+关注继续查看
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#"单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量;
#"双下划线" 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
 
class Pub(object):
 
    var1 = 'hello'
    _var2 = 'yes'
    __var3 = 'hah'
 
    def __init__(self):
        self._a = 123
        self.__b = 456
        self.c = 789
 
    def show_a_var(self):
        return self._a
 
    def show_b_var(self):
        return self.__b
 
    def show_var2(self):
        return self._var2
 
    def show_var3(self):
        return self.__var3
 
class Foo(Pub):
    pass
 
print(Pub.var1)
 
sl = Pub()
print(sl.c)
print(sl.show_a_var())
print(sl.show_b_var())
 
print(sl.show_var2())
print(sl.show_var3())
 
fa = Foo()
print(fa._var2)
print(fa.var1)
print(fa.show_a_var())
print(fa.show_var2())


本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/1930129

相关文章
|
1月前
|
Java 程序员 索引
我终于把Python中下划线的含义弄清楚了(憋了很久了)
我终于把Python中下划线的含义弄清楚了(憋了很久了)
|
4月前
|
Python
一日一技:在Python中双下划线私有方法不能被调用的原理
一日一技:在Python中双下划线私有方法不能被调用的原理
36 0
|
7月前
|
Python
Python编程:将驼峰命名转为小写下划线命名
Python编程:将驼峰命名转为小写下划线命名
83 0
|
8月前
|
Python
python中在自己导入模块是 会有红色得下划线,但是不影响运行
python中在自己导入模块是 会有红色得下划线,但是不影响运行
|
10月前
|
Java 程序员 索引
Python私有化及_下划线命名用途
Python中没有真正的私有属性或方法,没有真正的私有化,但有一些和命名有关的约定,让编程人员处理一些需要私有化的情况,我们常常需要区分私有方法、属性和公有方法、属性以方便管理和调用。那么在Python中如何做呢?
|
10月前
|
Java API C语言
python技巧之下划线
python技巧之下划线
68 0
|
11月前
|
SQL 安全 数据挖掘
Python对下划线有多偏爱
Python对下划线有多偏爱
|
Python
Python编程:将驼峰命名转为小写下划线命名
Python编程:将驼峰命名转为小写下划线命名
141 0
|
前端开发 Python
关于Python的前后、单双下划线作用,看完这篇文章吊打面试官!
在Python中,可能最常见的就是各种常量、变量、函数、方法前后添加的那些下划线了。有前面加的、后面加的,加一个的,加两个的,看到头晕。那么,你对这些知识都掌握了吗 ?让我们先来做一个自测吧。
208 0
|
算法 Python 容器
Python - 面向对象编程 - 魔术方法(双下划线方法)
Python - 面向对象编程 - 魔术方法(双下划线方法)
88 0
相关产品
云迁移中心
推荐文章
更多