Muszę utworzyć tablicę NumPy o długości n, której każdy element jest v.
Czy jest coś lepszego niż:
a = empty(n)
for i in range(n):
a[i] = v
Wiem zerosi onesdziałałbym dla v = 0, 1. Mógłbym użyć v * ones(n), ale to nie zadziała, kiedy byłoby znacznie wolniejsze.vjest None, a także
v * ones(n)nadal jest okropny, ponieważ używa drogiego mnożenia. Wymień *się +jednak, i v + zeros(n)okazuje się być zaskakująco dobre w niektórych przypadkach ( stackoverflow.com/questions/5891410/... ).
var = np.empty(n)a następnie wypełnić ją „var [:] = v”. (przy okazji, np.full()jest tak szybki)

a = np.zeros(n)w pętli jest szybsze niża.fill(0). Jest to sprzeczne z oczekiwaniami, ponieważ myślałema=np.zeros(n), że będę musiał przydzielić i zainicjować nową pamięć. Jeśli ktokolwiek może to wyjaśnić, byłbym wdzięczny.