Почему a, b = b, a + b не равно a = b, b = a + b, когда я запускаю fib () в python?

Liu Junhan спросил: 03 февраля 2018 в 10:32 в: python

Я новичок в программировании на питоне, и я пытаюсь написать фиб на основе генератора. И я попробовал это:

def fib(n):
  a = 0
  b = 1
  for _ in range(n):
     yield a
     print(a)
     a, b = b, a + b
     print((a,b))

и этот:

def fib(n):
  a = 0
  b = 1
  for _ in range(n):
    yield a
    a = b 
    b = a + b
print(list(fib(a)))

результаты разные, почему это произойдет?


0 ответов