在类内的方法中调用实例属性的逻辑

请考虑以下代码:


class Time:


    def __init__(self,hours,minutes):


        self.minutes = minutes

        self.hours = hours


    def addTime(t1):


        time = t1.minutes + t1.hours

        return time

我不明白为什么我可以调用和方法背后的逻辑。为什么该参数可以与类的实例一起使用?t1.minutest1.hoursaddTimet1self.minutes,self.hoursTime


红糖糍粑
浏览 61回答 1
1回答

www说

传递给类方法的第一个参数是类实例。因此,如果你有一个类方法,它采用一个int并按该int.增加其计数,当你调用类方法时,你将传递1个参数,但在你的类方法中,你将定义了2个参数,第一个是你想要用来引用类实例的名称,第二个是从调用代码传递的实际参数。class MyClass:    def __init__(self):        self.counter = 0    def increase(mc1, increase_by):        mc1.counter += increase_bymines = MyClass()print(mines.counter)mines.increase(50)print(mines.counter)因此,当我的代码调用增加并传递int时,python实际上会传递两个参数,类实例和整数。当你收到这些时,我在我的方法中收到这些,我正在将我收到的类实例对象标记为mc1,将int标记为increase_by因此,使用mc1名称,我可以访问所有类实例属性,因为mc1指向类实例
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python