我正在研究遺傳算法問題。假設我有一個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