print("Welcome to MusCalculator")
print("For adding two no type add")
print("for mutiplying type multiply")
print("for subtraction type subtract")
print("for dividing type divide")
def add_numbers(x, y):
if input == "addition":
addition = x + y
print addition
if input == "multiply":
multiply = x*y
print multiply
if input == "subtract":
if x > y:
sub = x - y
print sub
else:
sub = y - x
print sub
if input == "divide":
div = x / y
print div
else:
print("Use me if you know me")
x = input("First No.")
y = input("Second No.")
addition = x + y
c = input("Type Operation")
add_numbers(x, y)
错误是
Traceback (most recent call last):
File "C:\Users\Aafaq\workspace\python\project 1.py", line 34, in <module>
c = input("Type Operation")
File "C:\Program Files (x86)\eclipse\plugins\org.python.pydev_4.5.5.201603221110\pysrc\pydev_sitecustomize\sitecustomize.py", line 141, in input
return eval(raw_input(prompt))
File "<string>", line 1, in <module>
NameError: name 'addition' is not defined
答案 0 :(得分:0)
您的代码中存在一些问题。一些在下面提到。 在主代码中使用了加法变量,您可能希望尝试使用不同的名称或将添加声明为全局变量。
在您的印刷声明之下或之上: 加= 0
此外,您将接收到的操作设置为变量名称c,该变量名称c在任何地方都没有引用,应该已设置为变量名称输入(这是系统定义函数名称,您不应该使用该名称将其与字符串)。
您可能正在尝试这样做:
operation = " "
addition = 0
def add_numbers(x, y):
if operation == "addition":
addition = x + y
print addition
if input == "multiply":
multiply = x*y
print multiply
if operation == "subtract":
if x > y:
sub = x - y
print sub
else:
sub = y - x
print sub
if operation == "divide":
div = x / y
print div
else:
print("Use me if you know me")
x = input("First No.")
y = input("Second No.")
addition = x + y
operation = input("Type Operation")
add_numbers(x, y)