质数的多种实现方法
程序员文章站
2022-07-14 14:28:34
...
#函数实现
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)
转载于:https://blog.51cto.com/13694862/2159488
上一篇: Ajax的多种实现方法
下一篇: 队列及其相关操作