Tôi cần tạo một mảng NumPy có độ dài n, mỗi phần tử là v.
Có điều gì tốt hơn:
a = empty(n)
for i in range(n):
a[i] = v
Tôi biết zerosvà onessẽ làm việc cho v = 0, 1. Tôi có thể sử dụng v * ones(n), nhưng nó sẽ không hoạt động khi sẽ chậm hơn nhiều.vcó None, và cũng
v * ones(n)vẫn còn kinh khủng, vì nó sử dụng phép nhân đắt tiền. Thay thế *bằng +mặc dù, và v + zeros(n)hóa ra là tốt đáng ngạc nhiên trong một số trường hợp ( stackoverflow.com/questions/5891410/ ích ).
var = np.empty(n)và sau đó điền nó với 'var [:] = v'. (btw, np.full()nhanh như thế này)

a = np.zeros(n)trong vòng lặp nhanh hơna.fill(0). Điều này trái ngược với những gì tôi mong đợi vì tôi nghĩa=np.zeros(n)sẽ cần phân bổ và khởi tạo bộ nhớ mới. Nếu bất cứ ai có thể giải thích điều này, tôi sẽ đánh giá cao nó.