gpt4 book ai didi

Python函数执行顺序

转载 作者:太空宇宙 更新时间:2023-11-04 09:25:31 25 4
gpt4 key购买 nike

我找不到与此主题相关的任何问题。但是 python 是在前一个调用的函数完成后执行一个函数,还是以任何方式并行执行?

例如:

def a():
print('a')

def b():
print('b')

a()
b()

所以在这个例子中我想知道我是否总能确定 function b function a 完成后被调用,即使 function a 是一个很长的脚本?这是什么定义,所以我可以查找有关此事的文档。

谢谢!!

最佳答案

TLDR:b 只会在 a 退出后运行。

每个 Python 线程一次只会执行一件事,并遵守表达式和语句的顺序。在大多数情况下,这意味着执行“自上而下”,尽管函数定义、控制流和其他元素会影响执行顺序。但是,在任何情况下都会保留顺序。


严格来说,Python语言只定义了execution order of expressions。 .

Python evaluates expressions from left to right. Notice that while evaluating an assignment, the right-hand side is evaluated before the left-hand side.

都不是simple statements也不compound statements定义评估顺序。

然而,Python 是基于一个 byte code interpreting virtual machine 定义的,引用实现基于 stackbased bytecode evaluation loop . Python 的所有主要实现都保留了一个接一个地执行语句的可观察行为。

关于Python函数执行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57854621/

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