关于《零基础学习Python》第四十四课的作业
这是小甲鱼的答案这是我的答案
做这个作业的时候,发现小甲鱼的答案里__add__()方法下的result和prompt变量前面没有self.,而我在前面加了self.之后发现实现的效果是一样的,我想问这两者在这里是一样的吗,加和不加self.分别会造成什么影响呢?
加self后,你试试在这个函数外面调用它? 然后不加的话,你也试试在函数外面调用它? 区别你就知道了;加了self就是类的变量;不加就只是函数的变量 加上self意味着你想要将它视作类的成员变量,不加则只是局部变量而已 cupbbboom 发表于 2018-12-28 07:09
加self后,你试试在这个函数外面调用它? 然后不加的话,你也试试在函数外面调用它? 区别你就知道了;加了 ...
谢谢,我在这个函数的后面又加了一个函数,会调用result变量。发现加了self就可以正常调用这个新函数,如果不加就会显示TypeError: distinguish() takes 0 positional arguments but 1 was given。所以我可以理解为:self就是用来指示类的全局变量的标志吗? BngThea 发表于 2018-12-28 08:16
加上self意味着你想要将它视作类的成员变量,不加则只是局部变量而已
谢谢。
页:
[1]