qiangqiang1 发表于 2020-6-11 16:18:50

类定义中self和instance分别代指什么

class Celsius:
    def __init__(self, value = 26.0):
      self.value = float(value)
      print('name')
    def __get__(self,instance,owner):
#这里的self和instance分别指的是什么?
      return self.value
    def __set__(self,instance,value):
      self.value = float(value)
      

heidern0612 发表于 2020-6-11 16:20:13

self表示你类创建实例化后的对象。

instance就是实例。

Twilight6 发表于 2020-6-11 16:20:18

本帖最后由 Twilight6 于 2020-6-11 16:23 编辑

self 是指实例化的对象 比如 a = Celsius()则 这个时候 self 就是指 a


instance 就直接指的是实例哈

1223253411 发表于 2020-6-11 17:32:53

你在编程的过程中有没有发现self的颜色和__init__中的self的颜色是一样的
那指的是什么,指的是对象,没错就是对象,self指的就是对象的本身
对象不是要创建的吗,嗯,是要创建的,但是每个对象调用的方法其实都是将自身传递进去,只不过python已经帮你传递进去了而已,用对象去点的时候,其实已经将对象的本身给传递进去了
self只是一个变量,只不过这个变量指向的是对象本身而已,你也可以换个名字,换成你喜欢的名字,就是指向自身的变量而已,每个实例方法的第一个参数都默认为自身

instance 就是个参数,传参进去,传的是什么就用什么,也就是个变量而已
页: [1]
查看完整版本: 类定义中self和instance分别代指什么