【发布时间】:2014-05-27 02:22:06
【问题描述】:
基本上这是在一个类中,它将另一个类的对象附加到列表自身。列表 self 中有 200 个对象。所以基本上如果我调用 self[1] 我会得到 ['John',['Alex', 'Rob']。基本上,'john' 指的是 self.firstname,其他名称指的是组成员。例如,下面将打印所有 200 个对象的每个对象的名字和组成员
for line in self:
print line.firstname
for line in self:
print line.groupmembers
现在我必须创建一个遍历所有名称并检查名称的东西。所以基本上,如果 John 有 Alex 和 Rob 作为成员,那么就必须有另一个名字为 Alex 的对象和另一个名字为 Rob 的对象。所以说没有名字亚历克斯的对象我想打印“不匹配”。这是我到目前为止所拥有的,但它没有做它打算做的事情。
def name(self):
firstnames = []
for item in self:
firstnames.append(item.firstname)
for item1 in self:
for i in item1.groupmembers:
if i not in hello:
print 'mismatch'
【问题讨论】:
-
for item in self应该做什么?您的类是否继承了可迭代的东西或以其他方式正确实现了该行为? -
self 中的每个项目(这有 200 个对象)都是不同的学生对象。所以我正在遍历每个对象并将名字附加到列表中
-
您的类是否是可迭代的子类或以其他方式正确实现此行为?您不能只通过
for循环传递任何类的实例并让它工作。