2012-06-22 4 views
0

Afin de condenser mon code, j'essaie de faire de l'une de mes boucles while une fonction. J'ai essayé plusieurs fois et je n'ai pas encore reçu le même résultat lors de la compilation car je laisserais juste la boucle while.Conversion d'une boucle while en fonction? Python

est ici la boucle while:

while True: 
    i = find_lowest_i(logs) 
    if i == -1: 
     break 
    print "i=", i 
    tpl = logs[i].pop(0) 
    print tpl 
    out.append(tpl) 
    print out 

Et voici ce que j'ai jusqu'à présent pour ma fonction:

def mergesort(list_of_logs): 
    i = find_lowest_i(logs) 
    out = [] 
    while True: 
     if i == -1: 
      break 
     print "i=", i 
     tpl = logs[i].pop(0) 
     print tpl 
     out.append(tpl) 
     print out 
    return out 

Merci à l'avance. Cet endroit est un refuge pour un programmeur débutant.

Répondre

0

Il semble que le paramètre de votre fonction est list_of_logs et vous utilisez toujours logs dans le corps de la fonction. La solution la plus simple est probablement de renommer votre paramètre en mergesort de list_of_logs en logs. Sinon, cela me semble complètement correct.

+0

Merci! Je ne peux pas croire que je n'ai pas compris ça. – Raj

Questions connexes