【发布时间】:2012-06-13 01:07:37
【问题描述】:
我认为我对函数的工作原理以及如何将它们分配给变量有相当的了解。但是,我只是在查看几个月前阅读的一些 Learn Python the Hard Way 练习(最值得注意的是练习 21),并注意到解释器输出的一些有趣的事情。
def add(a, b):
print "ADDING %d + %d" % (a, b)
return a + b
输出:
>>> add(30, 5)
ADDING 30 + 5
35
为什么显示为 35?你不应该写“print add(30, 5)”来显示返回值吗?
>>> age = add(30, 5)
ADDING 30 + 5
>>> age
35
变量赋值看起来像调用函数并输出打印语句而不是返回值......但变量本身显示值35,为什么变量赋值不一样?
我希望这些问题是有意义的。我只是想更好地了解幕后发生的事情。如果有人有任何外部阅读,请告诉我!
【问题讨论】:
标签: python function variable-assignment function-calls