鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 蛊惑的心

请问关于继承列表与new魔法方法的问题

[复制链接]
发表于 2018-7-25 22:27:16 | 显示全部楼层
感觉list.__new__似乎又调用__init__.如果加上
def __init__(self, *args):
    psss
则不会报错,如果是
def __init__(self, args):
    psss
则错误信息与你的程序相同。
我这样改一下可以运行,但看着就不舒服,等着大神吧。
  1. class Nlist(list):
  2.     def __new__(cls,*args):
  3.         print(type(args))
  4.         global x
  5.         x = tuple(set(list(args)))
  6.         return list.__new__(cls,x)
  7.     def __init__(self, *args):
  8.         return super().__init__(x)
  9.     def apppend(self,value):
  10.         if value not in self:
  11.             return list.append(self,value)
  12. nn = Nlist(1,2,3,4,1,2,3)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-25 22:41:40 | 显示全部楼层
冬雪雪冬 发表于 2018-7-25 22:27
感觉list.__new__似乎又调用__init__.如果加上
def __init__(self, *args):
    psss

嗯。。。谢谢你
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-1 01:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表