Python 类型错误:';MyList';对象不可下标

Python 类型错误:';MyList';对象不可下标,python,list,class,tuples,iterable,Python,List,Class,Tuples,Iterable,我试图得到一个类对象的长度,MyList的,personal iterable的,self.it。两种方法的代码如下所示: def __init__(self, *args, **kwargs): if isinstance(args, (list, tuple)): self.it = args else: self.it = kwargs def __len__(self): print("len") return len

我试图得到一个类对象的长度,MyList的,personal iterable的,self.it。两种方法的代码如下所示:

def __init__(self, *args, **kwargs):

    if isinstance(args, (list, tuple)):
        self.it = args 
    else:
        self.it = kwargs

def __len__(self):
    print("len")
    return len(self.it)
当代码点击
def\uu len\uuu(self)
时,会产生以下错误-

TypeError回溯(最近一次调用)
在()
1#测试MyList的实现
---->2测试列表(MyList)
测试列表中的C:\Users\User\Desktop\beaver\Python\u 5\u HW\graders\grader36.pyc(StdntClass)
C:\Users\User\Desktop\beaver\Python\u 5\u HW\graders\grader36.pyc在测试中(x,y,*args)
TypeError:“MyList”对象不可下标

我在StackOverflow上搜索了这个错误,但我不知道出了什么问题。我应该怎么做呢?

你没有点击
\uu\uu\uu
。您的回溯不会显示命中的内容(可以理解,没有分级器可用的源代码),但异常表明您缺少
\uuuu getitem\uuuu
方法。哦,明白了,谢谢提示@MartijnPieters@ChristineZhao您需要更新您的问题,使其与您遇到的错误更加相关。此外,
*args
始终是一个元组。它可能是一个空元组。它永远不会是另一种类型。