认真钢笔

文章
4
资源
0
加入时间
2年10月18天

Python 迭代器有了__next__为什么还要__iter__(深刻理解)

网上一堆回答,感觉讲了,但是又没讲,没有跳出Python语法本身的概念,也没站在历史角度上来处理问题1. 基于C语言的历史性来看,for 这个语句本来没那么强,后来大家觉得有很多循环处理的事情,能简化这个过程就爽了,比如直接能将map输出来,但是后来觉得,这样还不够爽,如果能让对象直接输出来不是更爽2. 但前提条件是,不能动了本语言的根基,要保证向后兼容性,于是他们想到了一个点子,那就是for 运行到对象的时候,以前肯定是抛异常,现在不让它抛异常了,直接给它增强一些功能,检测下,如果该对象有个_