这篇文章主要介绍“怎么使用初始化种子和unfold迭代函数生成列表”,在日常操作中,相信很多人在怎么使用初始化种子和unfold迭代函数生成列表问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用初始化种子和unfold迭代函数生成列表”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
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生成器,直到生成器退出,形成列表并返回。
到此,关于“怎么使用初始化种子和unfold迭代函数生成列表”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/209380.html