如何在python中编写一行用生成器斐波那契打印的代码
我的打印和生成器有问题。我需要: 除上述生成器外,编写一行代码,打印小于1000且在斐波那契序列中可被3整除的所有数字(与“所有数字”不同)的列表,从0、1开始 我的发电机:如何在python中编写一行用生成器斐波那契打印的代码,python,python-3.x,printing,generator,fibonacci,Python,Python 3.x,Printing,Generator,Fibonacci,我的打印和生成器有问题。我需要: 除上述生成器外,编写一行代码,打印小于1000且在斐波那契序列中可被3整除的所有数字(与“所有数字”不同)的列表,从0、1开始 我的发电机: def fibonacci(x,y): a, b= x, y while True: yield a a, b = b, a + b def fibonacci_until(x,y,n): a, b = x, y while b <=n:
def fibonacci(x,y):
a, b= x, y
while True:
yield a
a, b = b, a + b
def fibonacci_until(x,y,n):
a, b = x, y
while b <=n:
yield a
a, b = b, a + b
def fibonacci(x,y):
a、 b=x,y
尽管如此:
产生
a、 b=b,a+b
def fibonacci_直到(x,y,n):
a、 b=x,y
虽然b正常,但您需要进行以下修改:
def fibonacci_until(x,y,n):
a, b = x, y
while b <=n:
yield a
a, b = b, a + b
print([f for f in fibonacci_until(0,1, 1000) if ((f % 3) == 0)])
def fibonacci_直到(x,y,n):
a、 b=x,y
而b你可以用你的fibonacci\u直到generator
[f for f in fibonacci_until(0,1, 1000) if f % 3 == 0]
打印([0,3,21,144])
–没有人说你必须使用发电机…
[f for f in fibonacci_until(0,1, 1000) if f % 3 == 0]