TypeError:list()最多使用1个参数(给定3个)进行列表类继承

GoG*_*oGo 1 python

我搜索了stackoverflow中的其他帖子,甚至复制了它们以尝试在我的机器上尝试回答。但是,它始终无法抛出"TypeError"

# this is as one of other post in StackOverflow. 
class ListClass(list):
    def __init__(self, *args):
        super().__init__(self, *args)
        self.append('a')
        self.name = 'test'
Run Code Online (Sandbox Code Playgroud)

我还尝试了通过的空课。但是,如果我继承并且我想念了一些东西而不是添加更多或错误的东西,那也失败了?

1)这是什么"TypeError",为什么?2)如何解决?

有关TypeError的更多快照:

>>> class ListClass(list):
...     pass
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: list() takes at most 1 argument (3 given)  
Run Code Online (Sandbox Code Playgroud)

win*_*d85 5

创建ListClass对象时,您将其提供给许多参数,这是您正在做的事情:

s = list(2,3,3)
Run Code Online (Sandbox Code Playgroud)

这是您应该做的事情:

s = list([2,3,3])
Run Code Online (Sandbox Code Playgroud)

在您的解释器上尝试以下代码片段。

  • 那么“list()”有什么意义呢?`[1,2,3]` 本身就让我成为了一个列表,所以我期望 `list(1,2,3)` 是它的“正式”版本。`list([1,2,3])` 是多余的。 (2认同)