首页
学习
活动
专区
工具
TVP
发布

我期待的

今天的文章并不是真正意义上的技术文章,一方面是解释一下之前的文章中某一个知识点带来的困惑,另一个方面是说点心里话。

首先做个自我检讨,在前天的文章中(

零基础学习 Python 之初识迭代

)出现了手残的现象,写完之后的粗略检查并没有让我发现这个地方,还有鉴于某个知识点可能引起的误会,我先在这里说一下。

问题出现在上面的 __next()__ 上,其实应该是 __next__(),鬼知道我当时为什么那么写,希望没有给你造成认识上的误解,其实如果你是仔细看了例子的话,应该不会有什么认识上的偏差。

我接下来想说的是重点,我当时在写 next 的时候并没有把它当成是一个比较容易混的点,可能对于知道的相对较多的朋友们产生误解,我在这里重新说一下。

在 Python3 中,所有的迭代器对象都有 __next__() 方法,这个方法在 Python2 中的名称是 next()。其实这个没什么难理解的,就是变了个名字而已,怪就怪在 Python3 里有个内置函数 next(),它可以通过迭代器调用 __next__() 方法。具体演示如下,我用的是 Python3。

>>> my_list = ['r','o','c','k','y']

>>> my_iter = iter(my_list)

>>> my_iter.__next__()

'r'

>>> next(my_iter)

'o'

>>> my_iter.next()

Traceback (most recent call last):

File"", line1,in

AttributeError:'list_iterator'object has no attribute'next'

大概就是这么个样子,希望这次我没有表达上的错误,在 Python3 下 my_iter.next() 是报错的,因为没有,而如果是在 Python2 下 my_iter().next() 是没有错误的。

下面说说心里话。

看过我昨天文章(周末了,咱来聊他个百八十万的)的朋友们可能知道,组里带我的大佬离职了,我要接手他的一部分工作独立来做,项目催的比较急,作为一个刚入职三个星期的新人来说,压力还是比较大的。工作之余还要看书,持续学习,同时兼顾写公众号,每次不管多晚我都还在坚持写,虽然这个不能作为我文章出现手残这种低级现象的借口,但我还是想说,我的精力终究是有限的,希望朋友们能多包涵。

因为这几个月申请的公众号都没有了留言功能,所以说在互动程度上比较差,但我还是希望,如果以后你在文章里发现了错误,错别字也好,或者你认为的知识性错误也好,希望可以通过后台留言或者加我微信告诉我,先行谢过。

我期待接下来可以通过自己的学习保持持续的进步,也期待能写出更多通俗易懂和有深度的文章,希望对不离不弃一直关注着我的你负责。

新的一周,燥起来!

The end。

扫一扫,有惊喜

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180730A092N900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券