码迷,mamicode.com
首页 > 编程语言 > 详细

python的self

时间:2019-06-24 21:07:41      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:sel   解释器   main   href   定义   重要   最好   继承   意思   

好文章:https://blog.csdn.net/CLHugh/article/details/75000104

重要观点:

两个下划线,在Python中,实例的变量名如果以开头,就变成了一个私有变量(private),只有内部可以访问,外部不能访问

你会看到以一个下划线开头的实例变量名,比如_name,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。

 

self代表类的实例,而非类。

class Test:
    def ppr(self):
        print(self)
        print(self.__class__)

t = Test()
t.ppr()
执行结果:
<__main__.Test object at 0x000000000284E080>
<class __main__.Test>

从上面的例子中可以很明显的看出,self代表的是类的实例。而self.__class__则指向类。 
注意:把self换成this,结果也一样,但Python中最好用约定俗成的self。 

在Python解释器的内部,当我们调用t.ppr()时,实际上Python解释成Test.ppr(t),也就是把self替换成了类的实例。

在继承时,传入的是哪个实例,就是那个传入的实例,而不是指定义了self的类的实例。

python的self

标签:sel   解释器   main   href   定义   重要   最好   继承   意思   

原文地址:https://www.cnblogs.com/Stephen-Qin/p/11079270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!