【发布时间】:2020-11-18 02:03:43
【问题描述】:
我有以下 python 函数,但我对第 2 行 (q, r = 0, n) 感到困惑
1 def div3(n):
2 q, r = 0, n
3 while r >= 3:
4 q, r = q+1, r-3
5 return q
div3(6)
如果我在第二行执行时运行该函数,我得到 r=6、n=6 和 q=0,这是为什么呢? 我认为当函数第一次运行时,在执行第二行时,值将是 r=0 和 q=6 和 n=6?是不是和q r 和n 用逗号分隔的方式有关?
【问题讨论】:
-
python 会将
0分配给q并将n的值分配给r。它使用右侧的值分配给左侧的变量。 -
为了更好地理解它,请从左到右查看表达式。等号之前最左边的变量将分配给等号之后的最左边。
-
哦,谢谢,我现在明白了!
标签: python python-3.x variable-assignment