网站维护基本概念认知phpwind8.7和wordpress

张小明 2026/1/8 18:40:41
网站维护基本概念认知,phpwind8.7和wordpress,互联网全网营销,有没有做外贸免费网站很多童鞋搞不懂python迭代器和生成器到底是什么#xff1f;它们之间又有什么样的关系#xff1f;这篇文章就是要用最简单的方式让你理解Python迭代器和生成器#xff01;迭代器和迭代过程维基百科解释道#xff1a;在Python中#xff0c;迭代器是遵循迭代协议的对象。使用…很多童鞋搞不懂python迭代器和生成器到底是什么它们之间又有什么样的关系这篇文章就是要用最简单的方式让你理解Python迭代器和生成器迭代器和迭代过程维基百科解释道在Python中迭代器是遵循迭代协议的对象。使用iter()从任何序列对象中得到迭代器如list, tuple, dictionary, set等。另一种形式的输入迭代器是generator生成器。很多容器诸如列表、字符串可以用for循环遍历对象。for语句会调用容器对象中的iter()函数 该函数返回一个定义了__next__()方法的迭代器对象该方法将逐一访问容器中的元素。所以说python中任意对象只要定义了__next__方法它就是一个迭代器。因此python中的容器如列表、元组、字典、集合、字符串都可以被称作迭代器。讲完迭代器后迭代就比较好理解了迭代就是从迭代器中取元素的过程。比如我们用for循环从列表[1,2,3]中取元素这种遍历过程就被称作迭代。# 列表是迭代器for element in [1, 2, 3]:print(element)# 元组是迭代器for element in (1, 2, 3):print(element)# 字典是迭代器for key in {one:1, two:2}:print(key)# 字符串是迭代器for char in 123:print(char)# 打开的text同样是迭代器for line in open(myfile.txt):print(line, end)如果你不想用for循环迭代呢这时你可以先调用容器以字符串为例的iter()函数再使用next()内置函数来调用__next__()方法当元素用尽时__next__()将引发 StopIteration 异常 s abc it iter(s) ititerator object at 0x00A1DB50 next(it)a next(it)b next(it)c next(it)Traceback (most recent call last):File stdin, line 1, in modulenext(it)StopIteration生成器 Generator看看廖雪峰大神的解释通过列表生成式我们可以直接创建一个列表。但是受到内存限制列表容量肯定是有限的。而且创建一个包含100万个元素的列表不仅占用很大的存储空间如果我们仅仅需要访问前面几个元素那后面绝大多数元素占用的空间都白白浪费了。所以如果列表元素可以按照某种算法推算出来那我们是否可以在循环的过程中不断推算出后续的元素呢这样就不必创建完整的list从而节省大量的空间。在Python中这种一边循环一边计算的机制称为生成器Generator。生成器也是一种迭代器但是你只能对其迭代一次。这是因为它们并没有把所有的值存在内存中而是在运行时生成值。你通过遍历来使用它们要么用一个for循环要么将它们传递给任意可以进行迭代的函数和结构。大多数时候生成器是以函数来实现的。然而它们并不返回一个值而是yield(暂且译作“生出”)一个值。每次对生成器调用next()时它会从上次离开位置恢复执行它会记住上次执行语句时的所有数据值。显示如何非常容易地创建生成器的示例如下:def reverse(data):for index in range(len(data)-1, -1, -1):yield data[index] for char in reverse(golf):... print(char)...flog可以用生成器来完成的操作同样可以用前一节所描述的基于类的迭代器来完成。但生成器的写法更为紧凑因为它会自动建__iter__()和__next__()方法。生成器表达式生成器不一定要用复杂的函数表示python提供了简洁的生成器表达式。从形式上来看生成器表达式和列表推导式很像仅仅是将列表推导式中的[]替换为()但是两者差别挺大生成器表达式可以说组合了迭代功能和列表解析功能。生成器表达式可以认为是一种特殊的生成器函数类似于lambda表达式和普通函数。但是和生成器一样生成器表达式也是返回生成器generator对象一次只返回一个值。 sum(i*i for i in range(10)) # sum of squares285 xvec [10, 20, 30] yvec [7, 5, 3] sum(x*y for x,y in zip(xvec, yvec)) # dot product260 from math import pi, sin sine_table {x: sin(x*pi/180) for x in range(0, 91)} unique_words set(word for line in page for word in line.split()) valedictorian max((student.gpa, student.name) for student in graduates) data golf list(data[i] for i in range(len(data)-1, -1, -1))[f, l, o, g]
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

效果建网站的公什么叫做优化

大家都知道Redis的业务范围是非常广的,但是对于刚入行的小伙伴来说可能也就知道个缓存跟分布式锁。因为Redis的很多功能在一些小企业里,根本是用不到的,得等到并发量到了一定的程度,系统扛不住了,才会用到Redis那些高级…

张小明 2026/1/7 3:27:21 网站建设

大连免费模板建站信息发布平台建站

music-api:跨平台音乐地址解析终极指南,免费获取全网音乐资源 【免费下载链接】music-api 各大音乐平台的歌曲播放地址获取接口,包含网易云音乐,qq音乐,酷狗音乐等平台 项目地址: https://gitcode.com/gh_mirrors/mu…

张小明 2026/1/7 3:27:19 网站建设

网站高端设计公司哪家好百度分享wordpress

在工程师的日常开发中,定时任务是绕不开的基础需求——无论是定时清理日志、周期性数据同步,还是定时推送通知、凌晨批量计算报表,都需要可靠的定时调度方案支撑。Python生态中,schedule、APScheduler、Crontab(系统级…

张小明 2026/1/7 3:27:22 网站建设

大秦wordpress付费温州seo团队

如何快速部署Cloudpods:面向新手的完整使用教程 【免费下载链接】cloudpods 开源、云原生的多云管理及混合云融合平台 项目地址: https://gitcode.com/yunionio/cloudpods Cloudpods作为一款开源的云原生多云管理平台,正在重新定义企业如何统一管…

张小明 2026/1/6 5:10:14 网站建设

湖州市住房和城乡建设局网站vps 建网站 代理

Dify平台的数据集管理:让大模型真正“懂”你的业务 在智能客服回复驴唇不对马嘴、AI助手反复推荐过时产品信息的今天,企业越来越意识到一个问题:通用大语言模型(LLM)虽然知识广博,却对自家的业务细节一无所…

张小明 2026/1/6 5:10:11 网站建设

洛阳做网站的个体户广告公司名字

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 设计一个快速原型工具,允许用户通过拖拽方式配置Edge管理策略,包含:1. 可视化策略配置界面 2. 实时预览配置效果 3. 一键生成策略JSON文件 4. 模…

张小明 2026/1/6 5:10:09 网站建设