Mam listę 2D 416 wierszy, każdy wiersz ma 4 kolumny. Wiersze 1-4 zawierają ich liczba wiersz 4 razy (tj [...[1,1,1,1],[2,2,2,2]...]
. Wiersz 330 zawiera [41,22,13,13]
. Wszystko inne jest [0,0,0,0]
. Obecnie używam dla pętli z wielu wyraźny if.Jak zdefiniować dużą tablicę listy w Pythonie za pomocą pętli For lub Vectorization?
myList = [[0,0,0,0]]
for i in range(1, 416):
if i == 1 or i == 2 or i == 3 or i == 4:
myList.append([i,i,i,i])
elif i == 330:
myList.append([41,22,13,13])
else:
myList.append([0,0,0,0])
Co jest bardziej wydajny sposób dla mnie, aby zdefiniować tę tablicę?
Inne pytania, które widziałem na SO nie wydają się wyraźnie zwrócić się do tego pytania, ale jeśli ktoś znajdzie taki, który może być uważany za duplikat, proszę oznaczyć to pytanie jako takie, a ja zaakceptuj to:
czy to musi być "lista" czy inne formaty są w porządku? – patrick
Wolałbym listę. Ale! Najważniejsze, na czym mi zależy, to wynik końcowy, więc jeśli znacie inną, lepszą metodę, rzućcie to na mnie. – SeeDerekEngineer
Czy obejrzałeś numpy arrays? Podobnie jak w przypadku odpowiedzi Mosesa, zacznę od np.zeros, a następnie dostosuję niezbędne wiersze. – mauve