码迷,mamicode.com
首页 > 编程语言 > 详细

python----iter\next

时间:2015-11-12 20:10:58      阅读:300      评论:0      收藏:0      [点我收藏+]

标签:

1、说明:__getitem__\setitem可以迭代,它已经不被推荐了;建议使用__iter__\next。

2、python会先去检查__iter__\next然后再去检查__getitem__\__setitem__,也就是说__iter__优先。

例子:

#!coding:utf-8
#!python version 2.7

class mysqence(object):
    def __init__(self,start,stop):
        self.start=start
        self.stop=stop
        self.current=start
    def __iter__(self):
        return self
    def next(self):
        ‘‘‘如果是python3.0环境,它已经不在用next了,而是把名字改成__next__‘‘‘
        current=self.current
        if current <= self.stop:
            self.current=self.current+1
            return current
        else:
            raise StopIteration

for x in mysqence(1,5):
    print x

 

python----iter\next

标签:

原文地址:http://www.cnblogs.com/JiangLe/p/4960023.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!