自学内容网 自学内容网

list与iterator的之间的区别,如何用斐波那契数列探索yield

  1. 问题

  1. list与iterator的之间的区别是什么?

  2. 如何用斐波那契数列探索yield?

2 方法

将数据转换成list,通过对list索引和切片操作,以及可以进行添加、删除和修改元素。
eac73231f3111c8fef9f4f8e8620e30e.png

  1. iterator是一种对象,用于遍历可迭代对象(如列表、元组或字典)。迭代器只能向前遍历,不支持索引和切片操作。通过调用next()函数,可以逐个获取迭代器中的元素。
    bc17d43d1c4d0f46669d3af0fb70eba0.png

  2. 如何用斐波那契数列探索yield?


    34aac82bb39cfbddc6075d2a05bc117d.png

  3. 代码

my_list = [1, 2, 3, 4, 5]
# 1、访问list元素
print(my_list[0])  
# 2、遍历list元素
for element in my_list:
   print(element)  
# 3、iterator的使用
my_iterator = iter(my_list)
# 访问iterator元素
print(next(my_iterator))  #
# 4、遍历iterator元素
for element in my_iterator:
   print(element)
# 1、简单输出斐波那契數列前 N 个数
def fab(max):
   n, a, b = 0, 0, 1
   while n < max:
       print(b)
       a, b = b, a + b
       n = n + 1
# fab(5)
# 2、使用yield输出斐波那契數列前 N 个数
def fab(max):
   n, a, b = 0, 0, 1
   while n < max:
       yield b
       # print b
       a, b = b, a + b
       n = n + 1
for n in fab(5):
   print(n)

3 结语

针对list与iterator的之间的区别是什么?和如何探索yield问题,我们小组提出探索斐波那契数列方法,通过对斐波那契数列输出,来感受迭代器iterator和生成器函数yield的含义,通过对结果的输出,证明该方法是有效的。但是我们在探索迭代器iterator和生成器函数yield时。采用的是小数据的输出。在处理大型数据集合时,使用迭代器比使用列表更有效率,因为迭代器只在需要时生成元素。而列表需要在内存中存储整个数据集合。这次的实验则没有采用大数据的输入。则没有更细致的探索到生成器函数yield的用法。


原文地址:https://blog.csdn.net/gschen_cn/article/details/143473844

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!