python之如何使用初始化种子和迭代函数生成列表
本篇阅读的代码实现使用一个初始化种子和迭代函数,通过嵌套函数对初始化种子进行迭代,最终生成一个列表。
1、unfold函数接受迭代函数,并初始化种子,产生列表。
对函数fn进行迭代化处理,必须始终返回包含两个元素的列表[value,nextSeed],或者返回False以终止构建器函数。
2、函数的unfold内部定义了构建器fn_generator。
这个构建器使用while循环调用迭代器函数并生成一个值,直到它返回False。最终通过列表导出,返回生成函数生成的列表。
构建器是一个简单但功能强大的创建迭代器的工具。其书写方式与标准函数相似,但是在要返回数据时使用yield语句。每当您对生成器调用next()时,它将从最后一次运行的位置恢复执行(它将记住最后一次执行语句时的所有数据值)。
fn_generator是用于while语句结束时使用yield返回当前while循环中val[0]的一个值。下次调用时,下一个循环继续进行,在下一个循环中继续返回val[0]的值,直到该迭代函数fn返回false结束while循环。
对于unfold函数的return语句,使用list导出不停地调用fn_generator生成器,直到生成器退出,形成列表并返回。
以上内容为大家介绍了python之如何使用初始化种子和迭代函数生成列表,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

相关推荐HOT
更多>>
python求和函数sum()详解
今天在学习的过程中,误用sum()函数,我又去查了查pythonsum()函数才恍然大悟。我本来想算几个Int值相加的和,本以为很简单的事情,结果却很悲...详情>>
2023-11-09 23:36:32
python子类可以调用父类方法吗
python中的子类中的__init__()函数会覆盖父类的函数,一些情况往往需要在子类里调用父类函数。如下例程里,处是需要调用父类函数的地方,接下来...详情>>
2023-11-09 20:20:51
python json.loads失败怎么办
json.loadsPython错误:1、'utf8'codeccan'tdecodebyte...由于需求,要用python读取网页返回json,并取得其中的数据但是却遇到以...详情>>
2023-11-09 16:41:05
python如何安装第三方函数库
python安装第三方库有两种方式:1.使用pip命令行工具在线下载你需要的第三方库2.手动下载第三方库,再使用pip命令安装1.使用pip命令行工具在线...详情>>
2023-11-09 16:01:37