gpt4 book ai didi

python - 在 python 3.x 中声明其主体之前调用函数

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:24 24 4
gpt4 key购买 nike

我知道在 python 中,所有函数都必须在使用之前定义。所以这段代码会导致错误:

hello()
def hello():
print('Hi!')

但是在如下代码中:

def func():
hello()

def hello():
print('Hi!')

func()

hello() 函数在定义之前被 func() 调用,它仍然有效,我不明白为什么。

那么你能否解释一下上述行为并提前致谢。

最佳答案

Python 是一种解释型语言,因此它是逐行解释的,

您的两个示例都遵循相同的逻辑,

在第二个,

funchello 已被解释,因此当您调用 func() 时,它们都是已知的并因此被执行。

def func():
hello()

--> 在这一层 func 是已知的但还没有执行(调用)

def hello():
print('Hi!')

--> 在这一层,func 和 hello 都是已知的但还没有执行(调用)

func()

--> 最后调用func时,不管funchello是什么顺序。它们是已知的并且在内存中有一个地址。

关于python - 在 python 3.x 中声明其主体之前调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37775737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com