鱼C论坛

 找回密码
 立即注册
查看: 2607|回复: 1

关于类和对象中 .self 的问题

[复制链接]
发表于 2016-1-30 22:42:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 amazing814 于 2016-1-30 22:50 编辑


版主还有工作人员不好意思,我不小心点了“已解决”。现在在问题区重发了一次。


各位大神好,我先跪下,再问问题:

在学习python的过程中,(小甲鱼视频039),定义类以及它附属对象的时候,用到 “self”。

class Xxx:
        def yyy(self, x, y):
                x.self = x
                y.self = y
                print (' {0} and {1}'.format(x.self, y.self))

为什么要给 x 还有 y 后缀加上 .self 呢? 如果我把程序改成

class Xxx:
        def yyy(self, x, y):
                print (' {0} and {1}'.format(x, y))

结果还是一样使用啊! 那为什么还要额外加入 .self 后置呢?

我的答案是:
因为在class Xxx中,如果还有其他的对象需要定义,例如
class Xxx:
        def yyy(self, x, y):
                x.self = x
                y.self = y
                print (' {0} and {1}'.format(x.self, y.self))

        def zzz(self)
                print ('{}'.format(x.self))
如果在zzz中想继续使用 yyy得到的输入变量x,则必须在 yyy中有“x.self = x”操作,否则 zzz无法调用 yyy中的x.

各位大神,我的理解对吗? .self 的作用是否就只是这样的? 是不是还有其他的作用?

先谢谢啦!



小甲鱼说 .self 类似“指针”的作用,用来区分不同对象。 这句话按我的理解,就是 .self 可以用来在
try1 = Xxx()
else2 = Xxx()
这种对象实例化的时候,区分 try1 和 else2 的不同。 然而,这...好像没有什么特殊的意义啊。

               
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-1-30 22:46:36 | 显示全部楼层
我误操作了,点了已解决。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-19 12:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表