为了账号安全,请及时绑定邮箱和手机立即绑定

请问为什么在recursion limit=3000的时候依然显示超过最大深度限制?

请问为什么在recursion limit=3000的时候依然显示超过最大深度限制?

小怪兽爱吃肉 2019-01-29 21:41:37
class sorted_list(object):     def __init__(self,elements):        self.elements=sorted(elements)    def __iter__(self):        self.position=-1         return self     def __next__(self):        if self.position == len(self.elements)-1:             raise StopIteration            self.position+=1         return self.elements[self.position]      namelist=['a','d','c'] sorted_namelist=sorted_list(namelist)#提示这一行 超过最大迭代深度限制for name in sorted_namelist:     print(name)
查看完整描述

1 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

缩进问题

    def __next__(self):        if self.position == len(self.elements)-1:
            raise StopIteration            self.position+=1

要改成

    def __next__(self):        if self.position == len(self.elements)-1:
            raise StopIteration        self.position+=1


查看完整回答
反对 回复 2019-01-29
  • 1 回答
  • 0 关注
  • 559 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信