我想写一个类计算器,包括:
add
的函数,它接受两个包含double值的参数并返回它们的和subtract
的函数,它接受两个包含double值的参数并返回它们的差值(从第一个中减去第二个)multiply
的函数,它接受包含double值的两个参数并返回其产品divide
的函数,它接受包含double值的两个参数,并返回第一个除以第二个值的值。如果第二个数字为零,则不要分割,并返回"您不能除以零!" 这是我的尝试,但显然它不正确。
class Calculator:
def add(x,y):
return x+ y
def subtract(x,y):
return x - y
def multiply(x,y):
return x * y
def divide(x,y):
if y==0:
return "You can t divide by zero!"
else:
return x/y
从结果中,我得到了意外的标识符x和y。
答案 0 :(得分:1)
python中的对象方法需要明确定义'这个'您从C'中了解的参数,或引用该对象本身的参数。在Python中,它通常被称为' self'。例如:
com.google.android.gms:play-services-ads:9.8.0
由于你的所有方法都不需要自己,并且计算器更像是方法的容器,你可以将它们定义为类方法,因此class Calc:
def add(self,x,y): return x+y
可以在不创建对象的情况下工作:
Calc.add(3,4)
如果你是python的新手,请注意缩进也非常重要。
答案 1 :(得分:0)
此答案将被编程实验室系统接受:
class Calculator:
def add(self, x, y):
self.x = x
self.y = y
a = self.x + self.y
return a
def subtract(self, x, y):
self.x = x
self.y = y
a = self.x - self.y
return a
def multiply(self, x, y):
self.x = x
self.y = y
a = self.x * self.y
return a
def divide(self, x, y):
self.x = x
self.y = y
if (y == 0):
a = "You can't divide by zero!"
else:
a = self.x / self.y
return a
还有更多简单的部分,但是编程实验室编辑器会接受。有时可能会有点挑剔。