优草派  >   Python

如何使用初始化种子和迭代函数生成列表?

孙慧敏            来源:优草派

初始化种子和迭代函数在python中常用于生成数列。初始化种子代表数列的初始值,迭代函数代表如何根据前一个数生成下一个数。通过这种方式,可以生成很多数列,例如斐波那契数列、等比数列等。下面将从多个角度讲解如何使用初始化种子和迭代函数生成列表。 

如何使用初始化种子和迭代函数生成列表?

一、斐波那契数列

斐波那契数列是一个非常著名的数列,它的第一个数为0,第二个数为1,从第三个数开始,每一个数都是前两个数之和。因此,斐波那契数列的初始化种子为(0,1),迭代函数为f(n) = f(n-1) + f(n-2)。以下是python代码:

def fibonacci(seed, n):

seq = list(seed)

for i in range(n - len(seed)):

seq.append(seq[i] + seq[i + 1])

return seq

print(fibonacci((0, 1), 10))

二、等比数列

等比数列是指相邻两项的比值相等的数列。它的迭代函数可以写作f(n) = f(n-1) * r,其中r为比值。以下是python代码:

def geo_seq(seed, n, r):

seq = list(seed)

for i in range(n - len(seed)):

seq.append(seq[i] * r)

return seq

print(geo_seq((1,), 10, 2))

三、列表推导式

生成longlist = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]这个列表可以使用如下的代码:

longlist = [i for i in range(10)]

四、使用map函数

map是一个可以用来对列表中的每一项作用一个函数的python函数。例如,以下代码可以将一个整数列表中的每一个元素都平方:

def square(x):

return x ** 2

result = map(square, [1,2,3,4,5])

print(list(result))

摘要:本文从斐波那契数列、等比数列、列表推导式、map函数四个方面介绍了初始化种子和迭代函数的应用,对于初学者来说非常友好。

关键词:初始化种子、斐波那契数列、等比数列

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行