Python Forum
My code which adds fibonacci numbers to a list adds too many terms.
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
My code which adds fibonacci numbers to a list adds too many terms.
#2
Use an infinite generator together with itertools.islice.

from itertools import islice


def fib():
    a, b = 0, 1
    while True:
        yield a
        a, b = a + b, a


fibs = list(islice(fib(), 0, 100))
The yield in the function turns the function into a generator.

Generators: https://realpython.com/introduction-to-p...enerators/
Islice: https://docs.python.org/3/library/iterto...ols.islice
Almost dead, but too lazy to die: https://sourceserver.info
All humans together. We don't need politicians!
Reply


Messages In This Thread
RE: My code which adds fibonacci numbers to a list adds too many terms. - by DeaD_EyE - Jun-10-2020, 02:14 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  How do I calculate a ratio from 2 numbers and return an equivalent list of about 1000 Pleiades 8 15,828 Jan-05-2024, 08:30 PM
Last Post: sgrey
  find random numbers that are = to the first 2 number of a list. Frankduc 23 3,343 Apr-05-2023, 07:36 PM
Last Post: Frankduc
  List of random numbers astral_travel 17 2,823 Dec-02-2022, 10:37 PM
Last Post: deanhystad
  Remove numbers from a list menator01 4 1,392 Nov-13-2022, 01:27 AM
Last Post: menator01
  [split] why can't i create a list of numbers (ints) with random.randrange() astral_travel 7 1,600 Oct-23-2022, 11:13 PM
Last Post: Pedroski55
  Divide a number by numbers in a list. Wallen 7 8,134 Feb-12-2022, 01:51 PM
Last Post: deanhystad
  producing numbers out of a list bouraque7878 10 3,840 Nov-12-2021, 09:13 PM
Last Post: jefsummers
  How to change odd to even numbers in the list? plumberpy 8 3,823 Aug-08-2021, 11:07 AM
Last Post: plumberpy
  convert numbers into list lokesh 1 2,415 Jun-03-2021, 06:37 AM
Last Post: menator01
  Fibonacci Yasunaga 7 2,990 May-16-2021, 02:36 PM
Last Post: csr

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020