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