美文网首页
定制类__iter__

定制类__iter__

作者: 一二三开花 | 来源:发表于2020-10-27 11:11 被阅读0次

    如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个iter()方法,该方法返回一个迭代对象,然后,Python的for循环就会不断调用该迭代对象的next()方法拿到循环的下一个值,直到遇到StopIteration错误时退出循环。

    一个类想实现切片方法:getitem

            if isinstance(n, slice): # n是切片
    

    总之,通过上面的方法,我们自己定义的类表现得和Python自带的list、tuple、dict没什么区别,这完全归功于动态语言的“鸭子类型”,不需要强制继承某个接口。

    相关文章

      网友评论

          本文标题:定制类__iter__

          本文链接:https://www.haomeiwen.com/subject/odutvktx.html