Sto provando a farmi strada attraverso Learn Python the Hard Way, e sto cercando di gingillarmi dove posso per migliorare la mia formazione. Pensavo che avrebbe funzionato: impostare raw_input per impostare un limite per un ciclo while, quindi lasciare che il ciclo while si esegua fino al limite che stabilisco con la variabile "frequency".Perché raw_input crea un ciclo infinito in questa variante di esercitazione Learn Python the Hard Way?
E, no. Invece, manda Python in un ciclo infinito di creazione di liste di numeri, ognuna delle quali sembra essere un incremento più lungo dell'ultima (molto lunga) lista.
Il codice originale aveva "while i < 6" - Ho aggiunto la variabile raw_input, e anche se inserisco la stessa variabile del codice originale (6), fa questa cosa a ciclo infinito.
Ecco lo script completo:
i = 0
numbers = []
print "What is the frequency?"
frequency = raw_input ('Kenneth? ')
while i < frequency:
print "At the top i is %d" % i
numbers.append(i)
i = i + 1
print "Numbers now: ", numbers
print "At the bottom i is %d" % i
print "The numbers: "
for num in numbers:
print num
Scuse per la massima ignoranza - Ho una copia di Python per Software Design di fronte a me in edizione economica in questo momento, ed è la prossima cosa sulla mia per -fare la lista dopo LPTHW.
Si potrebbe trovare il seguente utile. Si tratta di come stringhe e int sono confrontati in python. http://stackoverflow.com/questions/3270680/how-does-python-compare-string-and-int – Dunes
prova a cambiare 'raw_input' a' input' –
o 'frequency = int (raw_input ('Kenneth?'))) ' –