kangabo 2021-07-25 17:44 采纳率: 85.1%
浏览 86
已结题

如果self指向类本身,那么当有多个实例对象时,self指向哪一个呢?

我佛了,百度了下python的self十几个都是复制粘贴怪关键他们每个结尾都是复制粘贴了一句
如果self指向类本身,那么当有多个实例对象时,self指向哪一个呢?
留下疑问然后就结束,然后我搜这个疑问又是复制粘贴以及底下留这个没答案的疑问

img

  • 写回答

6条回答 默认 最新

  • soar3033 2021-07-25 21:23
    关注

    举个例子,假设有一个类p,它的定义是

    
    class p:
      def __init__(self):
        pass
    

    然后,我们实例化了两个类p的实例,一个a、一个b

    a=p()
    b=p()
    
    

    类实际是一个模板,我们定义class p,实际就是定义了一个代码模板。这个时候self是不指代具体目标的。
    当我们实例化类的时候,实际上就是复制了一个类的模板,比如a=p(),实际就是复制了一个类p的模板,然后将a指向这个复制的模板。而此时,这个复制的类p的模板里的self将指向a。同理,b=p(),也是复制了一份p的模板,而这一份模板里的self指向b。
    在上面的例子里,有两个实例化的类——a、b。它们各自的self分别指向自己本身——a、b。所以对于a=p(),类p的init(self)等同于,init(a)。对于b=p(),类p的init(self)等同于init(b)。
    可见,有多少个类的实例,就有多少个self,这些self互不干涉,分别指向实例化时的变量名。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 8月3日
  • 已采纳回答 7月26日
  • 创建了问题 7月25日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题