当前位置: 首页 > news >正文

扁平化网站配色公众号运营收费价格表

扁平化网站配色,公众号运营收费价格表,月光博客 网站模板,网站移动端怎么做1.迭代器(Iterator) 概念: 迭代意味着重复多次,就像循环一样。 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。 迭代器只能往前不会后退。 1.iter…

1.迭代器(Iterator)

概念:

迭代意味着重复多次,就像循环一样。

迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。

迭代器只能往前不会后退。

1.iter():返回迭代器自身。2.next():返回容器的下一个元素,如果没有元素了,抛StopIteration异常。也可以使用内置函数
next,next(it)和it.next()等效。

1、可迭代对象(Iterable)

可以被用作如for循环之中对象通常都是可迭代的

其中一些包括:所有的序列类型,如:list,str,tuple。

集合类型,如:set,frozenset。

映射类型,如:dict。

文件对象和其他满足迭代协议的对象(即实现了iter方法或者getitem方法)

2、不可迭代对象

那些不支持迭代协议的对象都是非迭代对象,常见的有:数字类型:int,float ...

#[1.list]
#列表是可迭代的
my_list=[1,2,3]
for item in my_list:print(item)
'''
会依次打印1,2,3
'''
#[2.string]
#字符串也是可迭代的
my_string="hello"
for char in my_string:print(char)
'''
会依次打印'h','e','l','l','o'
'''
#[3.dict]
#字典是可迭代的,迭代的是它的键
my_dict={'a':1,'b':2}
for key in my_dict:print(key)
'''
#会依次打印'a','b'
'''
#[4.int]
#数字是非可迭代的
my_number=10
print(my_number.__iter__)#报错#[5.float]
#浮点类型是非可迭代的
float_number=0.34
print(float_number.__iter__)#报错

2、生成器

1、概念:

Python中一种特殊类型的迭代器,本质上是可以记住执行位置的函数

生成器使用yield语句来生成一个值序列,不是一次性地产生一个完整的数据集并返回。

2、特点:

1.与迭代器类似,生成器也支持惰性计算,它们一次只生成一个项目

2.在每次产生输出之后,其状态会被挂起,直到下一次使用next()函数或for循环请求下一个值

3.当生成器函数执行完成时,或者遇到无法再产生新值的条件时,会抛出StopIteration异常

4.使用生成器函数定义生成器

5.生成器是通过在函数中使用yield关键字来定义的。

每当yield语句运行时,它会返回一个值,并在此时挂起函数的状态,包括局部变量、指针位置等。下一次调用时,它会从中断点继续执行

3、实例:

1、简单生成器函数

def count_up_to(max):count=1
while count<=max:yield countcount+=1
#创建生成器
counter=count_up_to(5)
#使用next()获取值
print(next(counter))#输出1
print(next(counter))#输出2
#可以继续调用next()获取剩余的值,或者使用for循环
for number in counter:print(number)
#输出3 4 5
'''在这个示例中,生成器函数count_up_to接受参数max并计数到这个值。
每次yield被调用,它就会产生当前的计数值,
并在下一次调用时从上次离开的地方继续执行。'''

2、生成器表达式

#使用生成器表达式创建生成器
gen_exp=(x*x for x in range(4))
#使用for循环迭代生成器
for num in gen_exp:print(num)
#依次打印0,1,4,9
'''
生成器表达式看起来类似于列表推导,
但使用圆括号而不是方括号。
它们非常适合于简单
的场景,
其中一个完整的生成器函数可能显得过于冗长。'''

3、yield关键字

用于定义生成器函数中的一个位置,这里会产出(yield)一个值给调用者,并暂停函数的执行,直到下一次通过next()来请求另一个值。

当生成器函数中执行到一个yield表达式时,它会返回该表达式后面的值给生成器的调用者,并暂停执行(所有局部变量和状态都会被保留)。

yield的挂起的函数执行可以在下一次调用next()或迭代时继续从上次暂停的位置恢复。

def simple_generator():print("Stage1")yield 1print("Stage2")yield 2print("Stage3")yield 3
gen=simple_generator()
#每次调用next()时,生成器从上次暂停的地方开始,直到遇到下一个yield 
val=next(gen)
#输出"Stage1",返回1
val=next(gen)
#输出"Stage2",返回2

总结生成器的特点:

内存效率:可以用于无法放在内存中的大型数据集。

改善性能:惰性计算意味着只有在必要时才计算值,可以减少不必要的计算节省计算资源。

简洁性:使用生成器和生成器表达式,可以使代码更简洁易懂。

适用于管道处理:生成器可以被链式结合,用于构建复杂的数据管道。

http://www.ritt.cn/news/28504.html

相关文章:

  • 成品网站源码68w68游戏哪些平台可以发布软文
  • wordpress哪个模板好用吗灰色词网站seo
  • app网站建设需要什么营销宝
  • 注册公司网站的费用百度推广优化排名怎么收费
  • 如何用群晖nas做网站长沙疫情最新消息
  • 电商营销策略百度关键词优化
  • 网站建设交流论坛百度极速版推广
  • 网站排名总是不稳定b站怎么推广自己的视频
  • 做行业分析的网站百度推广系统营销平台
  • 北京市住房与城乡建设 委员会网站网站排名查询alexa
  • 昌平网站建设公司建设优化网站
  • 查询公司信息去哪里查关键词优化公司哪家效果好
  • 石家庄网站建设蓝龙新郑网络推广公司
  • 互联网是做什么的商丘seo推广
  • 北京市住房和城乡建设部网站官网品牌网络推广运营公司
  • 个人服务器网站备案怎样做一个产品营销方案
  • 德洲网站建设网络广告怎么做
  • 做网页兼职网站玄幻小说百度风云榜
  • 外贸网站导航栏建设技巧360排名检测
  • b2b的两种网站类型热门搜索排行榜
  • 椒江网站制作济南专业做网站
  • 静宁网站建设短视频营销推广策略
  • 设计师网站建设免费web服务器网站
  • wordpress 占内存吉林seo基础
  • 网站建设一般花多少费用常见的网络营销方法有哪些
  • zencart网站打不开定制建站网站建设
  • 美食网站怎么做dw微信营销典型案例
  • 合肥做淘宝网站广州seo推广培训
  • 徐州做网站的公司推销广告
  • 怎样做网站推销产品网站搜索排名优化软件