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

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

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

2 方法

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

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

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

  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的用法。

相关推荐
Trouvaille ~6 小时前
【C++篇】在秩序与混沌的交响乐中: STL之map容器的哲学探寻
开发语言·数据结构·c++·算法·迭代器模式·stl·map
五条凪9 小时前
从零开始的LeetCode刷题日记:70. 爬楼梯
数据结构·算法·leetcode·职场和发展·1024程序员节
小丁爱养花9 小时前
算法专题:栈
数据结构·算法·leetcode
Charary10 小时前
链表练习记录
c语言·数据结构·学习·链表
TANGLONG22212 小时前
【初阶数据结构与算法】复杂度分析练习之轮转数组(多种方法)
java·c语言·数据结构·c++·python·算法·面试
sjsjs1112 小时前
【数据结构-合法括号字符串】力扣1963. 使字符串平衡的最小交换次数
数据结构·算法·leetcode
921正在学习编程15 小时前
数据结构之二叉树--前序,中序,后序详解(含源码)
c语言·数据结构·算法·二叉树
王老师青少年编程15 小时前
CSP/信奥赛C++完整学习规划(价值2万的csp-j完整课程体系)
数据结构·c++·算法·语法·csp·信奥赛
酷酷的崽79815 小时前
【递归】——五道经典链表与递归问题的深度解析
数据结构·链表