Python计算器 - 使用3号码有问题

时间:2018-05-20 15:13:12

标签: python python-3.x

我刚开始学习python,我创建了一个计算器 我在使用乘法和除法进行3次数运算时遇到了麻烦 我将变量Number3设置为零,这样如果你没有第三个数字就不会影响操作,所以它会1+1+0= 2,但如果它不是+或{{1}它最终会影响到答案 所以我所做的是创建一个值为1的变量Number4,然后将其添加到-语句中进行乘法和除法。
但是,我觉得它很草率,有更好的方法来获得效果。最好的方法是什么?

elif

1 个答案:

答案 0 :(得分:2)

我会设置

Number3 = None 

然后将逻辑内化为具有默认参数的函数

def add(x, y, z=None):
   return x + y + (0 if z is None else z) 
def sub(x, y, z=None):
   return x - y -  (0 if z is None else z) 
def mult(x, y, z=None):
   return x * y * (1 if z is None else z) 
def div(x, y, z=None):
   return x / y /  (1 if z is None else z)

然后所有这些应该按预期工作

print(mult(Number1,Number2))
print(mult(Number1,Number2,1))
print(mult(Number1,Number2,0))
print(mult(Number1,Number2,None))