我正在研究遗传算法问题。假设我有一个Population()
类,它有一个Individual()
的列表。每个人都有一个与它相关的分数。根据他们在人群中的分数对这些个人进行排序/排序的好方法是什么?作为一个例子:通过成员的属性排序
class Individual(object):
rr = 100
def __init__(self):
self.score = random.randrange(self.rr)
class Population(object):
def __init__(self, size):
self.size = size
self.population = [Individual() for _ in xrange(self.size)]
pop = Population(5)
for i in xrange(pop.size):
print pop.population[i].score
是否有Pythonic的方式来排序这些个人的得分?谢谢!
......华丽! – Rock 2013-03-01 22:13:25
应该得到'分数',而不是'rr',但是很好的答案。 – mVChr 2013-03-01 22:20:02
@mVChr:确实,已更正。谢谢。使用cmp函数的 – 2013-03-01 22:24:20