鱼C论坛

 找回密码
 立即注册
查看: 3025|回复: 3

[已解决]请教一个小甲鱼老师用的类案例

[复制链接]
发表于 2022-8-30 08:44:38 | 显示全部楼层 |阅读模式

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

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

x
class C:
        x = 100
        def set_x(self,v)
                x=v

c=C()
c.set_x(250)

这个举例中,类里面set_x是self,v两个参数,但c只传入了1个参数,是默认传给了v吗?是不是因为self能自动识别为实例化对象,所以不传给他?或者是第一个参数就是默认的实例化对象?
这点不太好理解,请高手帮忙解释下。
谢谢!!!
最佳答案
2022-8-30 18:04:33
而c的一个参数是传给了v,因为self不需要传进参数,它只是C的实例化本身。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-8-30 15:54:42 | 显示全部楼层
self指的是类的实例化本身,把self改变一下也不会报错的:
class C:
    def __init__(set_number):
        x = 100
    def set_x(set_number,v)
        x = v
如果里面有多个参数的话,大多数程序员都会像这样写:
def __init__(self,x,y,position):
    self.x = x
    self.y = y
    self.position = position
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-30 18:04:33 | 显示全部楼层    本楼为最佳答案   
而c的一个参数是传给了v,因为self不需要传进参数,它只是C的实例化本身。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-8-30 18:08:38 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-5 14:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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