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

相关推荐
daiyang123...1 小时前
测试岗位应该学什么
数据结构
kitesxian2 小时前
Leetcode448. 找到所有数组中消失的数字(HOT100)+Leetcode139. 单词拆分(HOT100)
数据结构·算法·leetcode
薯条不要番茄酱3 小时前
数据结构-8.Java. 七大排序算法(中篇)
java·开发语言·数据结构·后端·算法·排序算法·intellij-idea
努力进修3 小时前
“探索Java List的无限可能:从基础到高级应用“
java·开发语言·list
盼海5 小时前
排序算法(五)--归并排序
数据结构·算法·排序算法
‘’林花谢了春红‘’10 小时前
C++ list (链表)容器
c++·链表·list
搬砖的小码农_Sky11 小时前
C语言:数组
c语言·数据结构
阿龟在奔跑13 小时前
引用类型的局部变量线程安全问题分析——以多线程对方法局部变量List类型对象实例的add、remove操作为例
java·jvm·安全·list
先鱼鲨生13 小时前
数据结构——栈、队列
数据结构
一念之坤13 小时前
零基础学Python之数据结构 -- 01篇
数据结构·python