Python类方法无输出

0 投票
1 回答
731 浏览
提问于 2025-04-18 02:28

当我调用我列表子类的 displaycount 方法时,什么都没有输出。这是什么问题呢?

class mylist(list):

    def _init_(self,name,age):
        list._init_(self, years)
        self.name = name;
        self.age = age;

    def displaycount(self):
        print "total employees %d" % self.name
        emp1 = mylist('lada', 20)
        emp1.displaycount()

1 个回答

3

你遇到了一些问题:

  1. '_init_' != '__init__'
  2. years在哪里定义的?
  3. 考虑到self.name是一个字符串,你觉得"total employees %d" % self.name会有什么结果?
  4. displaycount现在是递归地调用自己,使用一个新的mylist实例。

也许你想要的是:

class mylist(list):

    def __init__(self, name, age):
        super(mylist, self).__init__()
        self.name = name
        self.age = age

    def displaycount(self):
        print "total employees {0}".format(self.age)


emp1 = mylist('lada', 20)
emp1.displaycount()

撰写回答