我是一个初学者,所以我对print((函数背后的底层过程了解不多,但我对以下内容背后的过程很好奇:
def test():
print("hi")
return "hi"
print(test())
这输出两个";嗨"来自test((函数内print((的消息;嗨"来自return语句。本能地,我只会期待";嗨"来自return语句。
有人能简单地解释一下为什么我们两者都有吗?我想它是这样的:当使用诸如test((之类的函数输出作为print函数的参数时,首先调用test((函数(因此产生第一个"hi"(,然后打印其返回输出(产生第二个"hi(。
我在这里说得对吗?如果能了解这里发生的事情并提高我的理解,我将不胜感激:(
这是一个非常简单的
print(test())
相当于
result = test()
print(result)
第一行调用test
函数(在其主体中打印'hi
'(,并将名称result
分配给返回值,该返回值恰好也是'hi'
。
第二行打印test
返回的值。