我是Python编码新手,我有一个问题。代码如下:
class ManageContact(list):
def addManager(self, name, number):
if not isinstance(name, str):
raise TypeError('please enter a string')
super().append(name)\
它很好用。但是,我不知道通过super()/append(name)追加的变量“name”在哪里。你能帮忙吗?先谢谢你
我试过运行代码。它可以工作,即正在创建对象,并且可以运行该方法。但我不知道在哪个列表中添加了变量“name”
正在将
如果你觉得这不是直观的,那么你应该考虑重新设计你的班级。直接继承name
添加到继承列表的self
对象中。因此,您可以使用self[0]
、self[1]
等来访问它。print(self)
将打印整个列表list
更好,还是在类中有一个list
成员更清楚?请记住,现在,您的类具有列表中所需的所有方法;这真的是你想要的吗谢谢大家的帮助!我意识到我犯了一个愚蠢的错误。类本身将作为一个列表,因此它的所有实例也将是列表(尽管每个对象都是一个单独的列表,但没有主列表)。因此,eric.m的建议更好(在类defn中声明一个列表变量)。而不是直接从列表类继承)
我是新来的,所以这个愚蠢的问题
再次感谢大家
您可能应该将列表移动到一个变量而不是一个超类,即
然后,该名称将存储在
instance.Managers
相关问题 更多 >
编程相关推荐