天天看点

说说Python类中的self参数?

说说Python类中的self参数?

公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!

小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。

废话不多说,开始今天的题目:

问:说说Python中类的self参数?

答:在Python类中规定,函数的第一个参数是实例对象本身,并且约定俗成名字写为self。等价于C++中的self指针和Java、C#中的this参数。表示当前类的对象,可以调用当前类中的属性和方法。

首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的。self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

class Person:

    #属性

    #方法

    def run(self):

        print ("欢迎关注:程序IT圈")

    def run2(self,name):

        print("欢迎关注:",name)

#创建对象

p=Person()

p.run()

p.run2("程序IT圈")

输出结果:

欢迎关注:程序IT圈

欢迎关注: 程序IT圈

类 class 中为啥需要用使用 self ?

在类的代码(函数)中,需要访问当前的实例中的变量和函数的,即,访问Instance中对应的变量(property):

Instance.ProperyNam,去读取之前的值和写入新的值。

调用对应函数(function):Instance.function(),即执行对应的动作 。此处的Instance本身就是self。

如果感觉文字看不懂,建议大家看看下面这个视频,就懂了!

至于什么时候用加self,什么时候不用加self?

如果对于参考答案有不认同的,大家可以在评论区指出和补充,欢迎留言!