我使用notepad ++进行python 3.5的自学教学大约需要4个小时,并且遇到了障碍。主要的问题是,我被困在哪里是如此简单,我无法找到一种方法来解决谷歌!我正在尝试使计算器工作,并将显示我用过的代码。但首先......
def add(x, y):
return x * y
myValue=add(3,3)
print (myValue)
这会返回正确的结果。这个案例是6
。当我尝试在更大的计算器字符串中使用它时,结果将是33
。它不会添加它们,它只是并排打印数字。
完整代码:
#definitions
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):
return x / y
#A calculator that does +,-,*,/
def main():
operation = input('What may I calculate? (+,-,*,/)')
if (operation != '+' and operation != '-' and operation != '*' and operation != '/'):
#invalid operation text
print('Please try again. Select + for addition, - for subtraction, * for multiplication, / for division')
else:
x=input('Enter Number 1:')
y=input('Enter Number 2:')
if(operation=='+'):
print (add(x, y))
main()
答案 0 :(得分:2)
问题是你将字符串传递给函数而不是ints / floats。结果是它连接了字符串。您需要将字符串中的输入转换为float
(除非您对int
感到满意)
else:
x = float(input('Enter Number 1:'))
y = float(input('Enter Number 2:'))