在列表中输入一个无法获取对象的列表

时间:2015-03-22 19:19:00

标签: python class

我有一个班级:

class Cycle:
    def __init__(self, datalist):
        self.data = datalist[::]
        self.n = len(self.data)
        self.pointer = 0

然后我导入一个列表对象:

months = Cycle(['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC'])

但我无法解决任何问题:

'APR' in months

TypeError:类型'循环'的参数是不可迭代的

我该如何做到这一点?对不起,只是学习Python。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

您需要使用特殊的contains方法扩展您的类:

class Cycle:
    def __init__(self, datalist):
        # initializer contents here

    def __contains__(self, item):
        return item in self.data