我一直在尝试使用Python中的tkinter模块编写计算器,并且我已经在计算器上创建了14个与每个数字和符号相对应的函数。例如,下面的代码用于数字1
。
但是,程序不会返回应该返回的值。我使用前一个函数中的值作为参数的其他函数,但它们似乎没有经过,我不断得到结果0
。
变量a
和b
对应于计算中使用的两个数字,num
是程序的计数器,用于知道何时将数字赋予{{1}何时将其提交给a
。我已经尝试在此代码中插入一个打印,并且a和b正确打印,但这似乎是返回的问题。
任何帮助都将不胜感激。
b
答案 0 :(得分:2)
Python函数只返回一个值。当你写return a;return b
时,你只返回第一次出现。
您需要做的是打包这些元素并将它们作为元组返回:
def num1(num,a,b):
if num == 0:
a=a+1
num=num+1
elif num == 1:
b=b+1
return num, a, b
答案 1 :(得分:1)
您需要记住,到达工作流程的第一个return
语句会导致当前函数的结束并返回提供的值。
永远不会到达return a; return b
行,执行流程在第一个return
语句后返回给调用者
答案 2 :(得分:0)
您可以返回列表,字典,元组,变量。但是一个函数不能多次返回。您可以尝试在列表中插入值,然后返回列表。