学习的比伯 发表于 2022-5-15 16:19:35

python中类和对象

请问要如何理解画圈部分的代码呢?为什么去掉之后剩下两个自定义方法就无法运行了~谢谢

Twilight6 发表于 2022-5-15 16:26:59


__init__ 构造方法,再实例被创建时自动调用,主要用于初始化参数,不能有除 None 以外的返回值

就算去掉 __init__ 方法,也是会继承 Object 类的 __init__ 方法,不会无法运行,而这里无法运行的主要原因

是因为你的 s 变量 ,是在 __init__ 方法中进行初始化的

而方法 getString 和 printString 都使用了实例变量 s 导致抛出 "s" 为定义的错误

如果你这两个方法中不使用 s 变量,那么这两个方法也是可以正常定义,代码也可正常执行

学习的比伯 发表于 2022-5-15 18:14:16

Twilight6 发表于 2022-5-15 16:26
__init__ 构造方法,再实例被创建时自动调用,主要用于初始化参数,不能有除 None 以外的返回值

就算 ...

这里面如果我用到input函数的话,应该就一定会要用到实例变量吧。求解~respect

Twilight6 发表于 2022-5-15 21:02:13

学习的比伯 发表于 2022-5-15 18:14
这里面如果我用到input函数的话,应该就一定会要用到实例变量吧。求解~respect


你如果先调用 getString() ,再调用 printString 是没问题哒

页: [1]
查看完整版本: python中类和对象