2017-07-11 4 views
2

das ist mein ProgrammZuweisen ein Element aus einer Liste zu einem Array

horas= str(raw_input()) 
horas=horas.split(' ',horas.count(' ')) 
print horas 
array=[ 
    [0,0], 
    [0,0] 
] 
i=0 
for row in range(2): 
    for column in range (2): 
     array[row][column]=horas[i] 
     i+=1 
    i+=1 

ich erfolgreich den gegebenen Stachel in eine Liste gedreht, aber ich versuche, das Objekt in horas [0] bis Array zuweisen [0 ] [0], horas [1] zu array [0] [1], usw. und es zeigt mir immer wieder eine 'list index out of range' Fehlermeldung. Hilfe

+1

Was ist Ihrer Meinung nach der Wert von "i", wenn Sie auf diesen Fehler stoßen? –

+1

Wenn Sie nicht wissen, drucke ich während der Schleife und sehen, wo es scheitert –

+0

danke Brian, löste es !! c: –

Antwort

2

so die i + 1 in der äußeren ‚für‘ der Index leider außer Reichweite gehen machte mein schlechtes lol

0

Wenn Sie waren eine Funktion L2a (Liste Feldposition) haben, die in nimmt eine Listenposition und die Abmessungen Ihres Arrays und die x- und y für die Listenposition zurück gibt, könnte man schreiben:

for pos, value in enumerate(horas): 
     x, y = l2a(pos, 2, 2) 
     array[x][y] = value 

Jetzt müssen Sie L2a schreiben Sie einfach und Sie sind für jede Array-Größe festgelegt. (Hinweis: Verwenden Sie die Operatoren // und %.)

Verwandte Themen