最近看北大裘宗燕编写的Python数据结构书时,看到了一个很好的gcd函数定义方法
def gcd(m, n):
if not isinstance(m, int) or not isinstance(n, int):
raise TypeError
if n == 0:
m, n = n, m
while m:
m, n = n % m, m
return n
很简洁,考虑了其中有一个整数为0的情况,并且避免讨论m和n的大小关系