我正在尝试编写一个基本的加法算法,它给了我一个错误,上面写着: Traceback(最近一次调用最后一次): Traceback(最近一次调用最后一次): 文件“solution.py”,第6行,in 打印C. NameError:名称“C”不是definede 我删除了第一个打印语句并解决了这个问题,但现在它说'a'未定义
def solveMeFirst(a,b):
a = int(raw_input('A='))
b = int(raw_input('B='))
C = a+b
print C
res = solveMeFirst(num1,num2)
print res
答案 0 :(得分:2)
我得到NameError:名字'num1'未定义
这是有道理的,因为num1和num2没有在任何地方定义。
num1 = 1
num2 = 2
def solveMeFirst(a,b):
a = int(raw_input('A='))
b = int(raw_input('B='))
C = a+b
print C
res = solveMeFirst(num1,num2)
print res
作品。
res为None,因为您没有从solveMeFirst返回任何值。
如果您尝试在函数solveMeFirst之外打印C,它将是未定义的,因为它仅在函数内定义。
我认为你要做的是以下几点:
num1 = int(raw_input('A='))
num2 = int(raw_input('B='))
def solveMeFirst(a,b):
return a+b
res = solveMeFirst(num1,num2)
print res
答案 1 :(得分:0)
raw_input
方法从用户处获取num1和num2。res
中获取价值并打印。代码: -
def solveMeFirst(a,b):
C = a+b
return C
num1 = int(raw_input('A='))
num2 = int(raw_input('B='))
res = solveMeFirst(num1,num2)
print res
输出:
$ python test.py
A=2
B=2
4
答案 2 :(得分:0)
def solveMeFirst():
a = int(raw_input('A='))
b = int(raw_input('B='))
C = a+b
return C # you need to return value
res = solveMeFirst() #no need of argument
print res
输出:
A=10
B=34
44