class Fib(object):
def __call__(self,n):
a=[0,1]
for i in range(n-2):
an=a[-2]+a[-1]
a.append(an)
return a
f = Fib()
print f(10)
class Fib(object):
def __call__(self, num):
a, b, L = 0, 1, []
for n in range(num):
L.append(a)
a, b = b, a + b
return L f = Fib()
print f(10) #coding=utf-8
#最小公倍数
def dgb(a,b):
i = 1
result = max(a,b)
while result % min(a,b) != 0:
i += 1
result = max(a,b)*i
return result #最大公约数
def dgy(a,b):
result = min(a, b)
for i in range(min(a,b),0,-1):
if a % i == 0 and b % i == 0:
return i #最大公约数
def gcd(a, b):
if b == 0:
return a
return gcd(b, a % b) print dgy(88, 16)
print gcd(88,16)