python中私有变量和方法的声明方式如下:
_xxx 不能用’from module import *’导入
__xxx__ 系统定义名字
__xxx 类中的私有变量名,
因为下划线在解释其中有特殊的含义,所以在声明变量的时候尽量不要使用下划线,
python中一个变量如果声明为私有的,如下:
[code lang=”python”]
class TestClassA(object):
__a = 10
def get_a(self):
return self.__a
class TestClassB(object):
b = 10
def get_b(self):
return b
[/code]
以上两个类中,如果我们使用如下方法:
[code lang=”python”]
a = TestClassA()
b = a.get_a()
[/code]
此时,b和__a并不是占用同一块内存,而如果使用如下代码:
[code lang=”python”]
b = a.__a
[/code]
程序则会报错,
b是开辟了一块内存,内存的结构和__a完全相同,你修改b的值,但不会修改__a的值。
相反,如果我们使用如下代码:
[code lang=”python”]
c = TestClassB()
d = c.b
e = c.get_b()
[/code]
这里,d和e都是和TestClassB中的b变量占用同一块内存,但不完全相等,实际上如同所示:
今天先写到这吧,完全自创,上一篇源码博客地址请点击此处。