Hi, I'm new to python, and as the title says, can I improve this snippet
(readability, speed, tricks):
def get_fitness_and_population(fitness, population):
return [(fitness(x), x) for x in population]
def selection(fitness, population):
'''
Select the parent chromosomes from a population according to their
fitness (the better fitness, the bigger chance to be selected)
'''
selected_population = []
fap = get_fitness_and_population(fitness, population)
pop_len = len(population)
# elitism (it prevents a loss of the best found solution)
# take the only 2 best solutions
elite_population = sorted(fap)
selected_population += [elite_population[pop_len-1][1]] +
[elite_population[pop_len-2][1]]
# go on with the rest of the elements
for i in range(pop_len-2):
# do something
--
http://mail.python.org/mailman/listinfo/python-list