【发布时间】:2021-11-16 07:16:54
【问题描述】:
首先,我想说我是编码新手。几天前我报名了 Python 课程;我以前从未有过任何编码经验。
我有一个关于“return”命令的问题(或者用术语来说它被称为什么)。我知道它的教科书定义——它应该将函数的值返回给调用者——但我仍然不明白它的真正作用......
假设我有一个函数:
def your_salary(a, b)
salary = a * b #a is the number of hours worked, b is a rate per hour
现在我想使用该函数,所以我在脚本中调用该函数并计算薪水,所以我写了:
your_salary(40, 12) #40 hours worked for 12$ each
程序什么都不做。
当我将内置的打印功能添加到我的函数中时,我会得到正确的结果:
def your_salary(a, b)
salary = a * b
print(salary)
your_salary(40, 12)
=> 480
当我用“return”替换打印功能时,我又什么也得不到了。在我看来,“返回”不会将值返回给调用者。当我调用该函数时,它什么也没返回,程序没有向我显示函数 your_salary 中定义的计算结果。我想这就是为什么我不明白“返回”将值返回给它的调用者意味着什么的原因。有什么有用的解释吗?
【问题讨论】:
-
您的代码中没有
return这个词。如果你在函数中说return salary,而print(your_salary(40,12)),它会如你所愿。仅运行your_salary(40,12)不会打印任何内容(除非您在交互式解释器中)。