这行报错 return super(Programer, cls).__new__(cls, *args, **kwargs)

来源:4-2 Python面向对象-对象的实例化

慕粉1716255986

2018-04-05 17:16

  File "/Users/.........../testNewInitDel.py", line 7, in __new__

    return super(Programer, cls).__new__(cls, *args, **kwargs)

TypeError: object() takes no parameters


写回答 关注

6回答

  • 钓鱼的优卡斯
    2018-12-15 21:37:08
    return super().__new__(cls)
    return super(Programer, cls).__new__(cls)

    这两个都可以正常运行~~~而

    return super(Programer, cls).__new__(cls, *args, **kwargs)

    就报错~~~


  • 慕粉3880032
    2018-08-21 11:21:52
    return super(Programer, cls).__new__(cls,)

    去除后面的参数就可以正常运行

  • Simles
    2018-08-15 17:03:55

    根据错误信息提示:no parameters,去除多余的参数就可以运行了

  • 1594726340
    2018-07-30 13:51:45

    可能是老师敲错了,然后运行版本是敲对的运行版本。

  • 慕粉3362770
    2018-04-10 14:10:18

    谢谢你,非常有用


  • kaibisikai
    2018-04-05 23:07:22

    return super(Programer, cls).__new__(cls, *args, **kwargs)

    把这句改为

    return super(Programer, cls).__new__(cls)


    慕圣5332...

    为什么会这样呀?老师的运行是可以的呀?是不是python版本问题呢? 我还发现一个问题 return super().__new__(cls) 把super里的参数省略也可以的,是不是也是版本不同呢?

    2018-06-07 20:42:43

    共 1 条回复 >

Python-面向对象

Python面向对象教程,带你深入了解python面向对象特性

71236 学习 · 81 问题

查看课程

相似问题