iterable, iterator & generator

### iterable, iterator & generator

我该从哪儿说起呢?今天下午,我很专注地学了四个多小时,在看一个技术细节,从下午三点学到了晚上七点。

早上7点,我起来,在睡了6个小时之后。再之前,我和我“舅舅”(一个要好的前同事)视频聊天了两个多小时,最开始,我们模拟了一下面试的情景,他上来问了我一句话:“你介绍一下自己吧。”,我一下子就面红耳赤,说不出话来了,紧张惹。花了三四分钟才慢慢放松下来,可以比较“正常”地说话了,我把自己编的那一套瞎话讲给他听,他又问了我一些技术问题。答不上来我就记在纸上了。后面我们就开始聊起女人的话题了,啊。一点多睡的。

今天早上起来第一件事,本来是要用学习的办法来拖延的,但还是,先登上了招聘网站,把简历填好,然后向两家预先选定的公司的HR发送了打招呼的消息。然后就设了番茄钟开始学习,过个25分钟就去check一下看有没有回应。今天一天都没有回应惹。我舒了口气。我觉得我已经进入一个崭新的新纪元———用学习来逃避工作。完美。这比起之前的用娱乐来拖延逃避要好太多啦。你知道我写完这篇打卡日记后会干啥吗?我觉得我有相当大的几率会去看一本关于编程思想的书。并不是为了要找工作要多学一点。当然没有这些促动力我可能是不会把注意力转移到这方面的。但是,是真的这事儿本身做起来就有意思。如果不是这样的话,我压根做不下去的。

在文章的开头我提到了,今天下午我学了差不多有四个小时。那四个小时过得真快啊,不用数时间,注意力全在理解技术概念上了。而且一点也不累。像现在,我也挺精神抖擞的。和你们说一下我今下午学什么了吧。学的东西就在标题里,iterable, iterator & generator. ”这TM是什么玩意儿?“你心里要犯嘀咕了吧,且听我慢慢道来。你知道的(我知道你不知道),咱们的数据是以二进制储存在电脑里的,这些数据可以分为两部分,一部分是以相对静态的方式存在磁盘(硬盘)里,另外一部分需要动态运算的数据则存在内存里,你现在在荧幕上看到我写的这篇文章的视觉效果(包括文字的显示),就依赖了内存里的动态数据。你的内存的大小是有限的,有的时候里面运算的数据太多了(同时开启的APP太多),就会出现卡顿的情况,所以程序能高效率地利用内存空间是很重要的事情。好了,我们要继续跳转到比较底层的概念上去了,我们在内存里运算的这些数据,很多是结构化的数据,有一种数据结构,叫列表(数组),它的形式就是把一系列数按先后顺序(不是大小)排列起来,放在一个个的节点(内存位置)上,有点像在一列很长的火车(列表)的每节车厢(节点)里放一头大象(数)的感觉。OK,那我现在要把1到100亿加起来打印出来,要怎么做?有种很简单粗暴的方法就是先生成从1到100亿的一个列表,把它存放在内存里,再把这个列表的数值从头到尾加起来。这样的话,你存进去,你10G内存(近似)就没了。在这种情况下,另一种巧妙的办法是,使用generator。它的原理呢,很简单,就是设好了数值增加的规则,但是每次只返回一个数值。你的内存有救了!换成现实中的例子,就好比是一个餐馆今天要接纳1000个客人,笨方法就是先把这一千个人一股脑全塞进餐厅里,再开始给他们做菜。。。。。而另外一种方法则是按照规则依序接待他们,一次一小批,一次一小批,直到处理完。

啊,感觉写得有点狗屁不通,不过今天的1000字又写完啦,嘻嘻

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,992评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,212评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,535评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,197评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,310评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,383评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,409评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,191评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,621评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,910评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,084评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,763评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,403评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,083评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,318评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,946评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,967评论 2 351

推荐阅读更多精彩内容

  • 1 Iterable 我们一般称Iterable为可迭代对象。Python 中任意的对象,只要它定义了可以返回一个...
    猴哥爱读书阅读 4,507评论 1 4
  • 7、什么是 iterable/iterator/generator Iterable 可迭代对象列表、元祖、字符串...
    idri阅读 341评论 0 0
  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 18,941评论 17 410
  • 简介 基本概念 Generator函数是ES6提供的一种异步编程解决方案,语法行为与传统函数完全不同。本章详细介绍...
    呼呼哥阅读 1,070评论 0 4
  • 今天晚上非常忙碌,首先是各项调查,针对学生的情况由家长们填写。孩子做作业,我在参与调查,忙得不亦乐乎。良法...
    瑶昱阅读 208评论 0 3