質數的多種實現方法
阿新 • • 發佈:2018-08-14
elf num 多種實現 return code 列表 [] 叠代 def
#函數實現
def fib(num):
n,a,b=0,0,1
while n<num:
print(b)
a,b=b,a+b
n+=1
#列表添加
def fib(num):
n,a,b=0,0,1
l=[]
while n<num:
l.append(b)
a,b=b,a+b
n+=1
return l
#類,叠代器實現
class Fib: def __init__(self,num): self.num=0 self.n=0 self.a,self.b=0,1 def __iter__(self): return self def __next__(self): if self.n<self.num: result=self.b self.a,self.b=self.b,self.a+self.b self.n+=1 return result else: raise StopIteration
斐波拉契yield生成器實現
def fib(num):
n,a,b=0,0,1
while n<num:
yield b
a,b=b,a+b
n+=1
for i in fib(10):
print(i)
質數的多種實現方法