【发布时间】:2012-03-01 06:14:21
【问题描述】:
让我们假设以下对象:
class Test:
id1 = ""
id2 = ""
id3 = ""
def __init__(self,arg1,arg2,arg3):
self.id1 = arg1
self.id2 = arg2
self.id3 = arg3
可以看出,这个类必须包含 3 个唯一的 id。
t = []
t.append(Test(200,201,193))
t.append(Test(403,221,213))
t.append(Test(3,523,2003))
假设上面的代码,我在列表 t 中找到 id1 = 403、id2 = 221 和 id3 =213 的对象的最简单方法是什么?
提前致谢。
【问题讨论】:
-
你需要为
t保留一个特定的顺序,或者你可以排序吗?您会在t中反复查找实例吗? -
我应该在问题中说明,是的,列表 t 可以排序。另外,是的,例如,我会在 t 内反复查找。
-
这些是什么类型的对象?如果您已经知道要查找的东西的 id1、id2 和 id3,为什么还需要实际对象(即还有什么)?您真的想将几种 ID 与底层对象相关联吗? IE。 ID 值是数据的基本部分,还是您用来查找它们的内容?
-
请注意,
id1 = ""之类的行没有必要也没有帮助。 -
在新的 Python 2 代码中,最好总是继承
object而不是什么都没有,这会让你使用“新式类”。这样做有很多好处,但在您以后需要它们之前,您不必考虑太多。
标签: python