在Literate Programs网站上,我查看了GCD算法的Python代码。
def gcd(a,b):
""" the euclidean algorithm """
while a:
a, b = b%a, a
return b
身体发生了什么?表达评估?它是另一种结构的压缩形式吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
看起来像是简写:
while a > 0:
temp = a
a = b%a
b = temp
return b
答案 2 :(得分:0)
a
正在收到b%a
的结果,而b
正在收到a
与以下内容相同:
while a > 0:
tmp = a
a = b%a
b = tmp
return b
有关切换变量的更多信息,请参阅此文章:Is there a standardized method to swap two variables in Python?