Python对函数参数和 *** 作数求值的顺序是确定性的吗(+在何处记载)?

Python对函数参数和 *** 作数求值的顺序是确定性的吗(+在何处记载)?,第1张

Python对函数参数和 *** 作数求值的顺序是确定性的吗(+在何处记载)?

是的,除作业外,从左到右的评估顺序得到保证。在此处记录(py2,py3):

Python从左到右计算表达式。请注意,在评估分配时,右侧的评估先于左侧。

在以下各行中,表达式将按其后缀的算术顺序求值:

expr1, expr2, expr3, expr4(expr1, expr2, expr3, expr4){expr1: expr2, expr3: expr4}expr1 + expr2 * (expr3 - expr4)expr1(expr2, expr3, *expr4, **expr5)expr3, expr4 = expr1, expr2

如果该语言没有对此做出选择,则对一个参数的求值可能会使另一个参数变异并导致未指定的行为,因此Python的所有实现都必须遵循此规范。



欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5644332.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存