python 关于类的用法,求解
有以下代码,目的是把方法a,和方法b的结果加起来,用方法c表示出来。但不知道怎样写。class Test:
temp=5
def a(self,num1):
return self.temp*num1
def b(self,num2):
return self.temp*num2
def c(self):
return Test.a+Test.b
结果如图:
方法c的结果为什么不是a+b呢?应该怎样改? 首先要显示test.c的结果应该调用text.c
test.c()
其次 c这个方法里面试图将两个方法加起来, 是会引发异常的 试试这样写:
class Test:
temp=5
def a(self,num1):
self.aa = self.temp*num1
return self.aa
def b(self,num2):
self.bb = self.temp*num2
return self.bb
def c(self):
return self.aa+self.bb
>>> test = Test()
>>> test.a(2)
10
>>> test.b(3)
15
>>> test.c()
25 返回Test中方法的结果需要实例化——加括号test.c(),由于函数a和函数b运行自身带参数,不能直接return test.a()+test.b(),可以尝试:
class Test:
def __init__(self,temp,num1,num2):
self.num1 = num1
self.num2 = num2
self.temp = temp
def a(self):
return self.temp*self.num1
def b(self):
return self.temp*self.num2
def c(self):
return self.a()+self.b()
>>> test = Test(5,2,3)
>>> test.c()
25 明白了,谢谢
页:
[1]