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

相关推荐
chao_78942 分钟前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
秋说3 小时前
【PTA数据结构 | C语言版】一元多项式求导
c语言·数据结构·算法
谭林杰4 小时前
B树和B+树
数据结构·b树
卡卡卡卡罗特5 小时前
每日mysql
数据结构·算法
chao_7895 小时前
二分查找篇——搜索旋转排序数组【LeetCode】一次二分查找
数据结构·python·算法·leetcode·二分查找
lifallen6 小时前
Paimon 原子提交实现
java·大数据·数据结构·数据库·后端·算法
不吃洋葱.7 小时前
前缀和|差分
数据结构·算法
哦吼!8 小时前
数据结构—二叉树(二)
数据结构
码农Cloudy.10 小时前
C语言<数据结构-链表>
c语言·数据结构·链表
lightqjx11 小时前
【数据结构】顺序表(sequential list)
c语言·开发语言·数据结构·算法