[英]how to make a dtype for list of arrays in numpy python3+
我有一個從串行端口獲取並共享的 300x57 字節數組,然后我打算將其直接解壓到 numpy 數組中
所以我制作了一個 57 字節大小的 dtype
onebuffdtype = np.dtype(
"b1, b1, f4, u4, u2, u1, f4, u4, u2, u1, f4, i4, i2, i1, f4, u4, u2, u1, f4, u4, u2, u1")
那么如果
shared_buff1.buf
是緩沖區所在的地方
buff1_np = np.ndarray((300, 57,), dtype=onebuffdtype,
buffer=shared_buff1.buf)
但它說
TypeError:緩沖區對於請求的數組來說太小了
數組的形狀是元素的數量,而不是它包含的字節數。 如果您的元素都是 57 字節大小,那么 300x57 字節緩沖區的大小正好適合初始化大小為 300 的數組:
buff1_np = np.ndarray(300, dtype=onebuffdtype, buffer=shared_buff1.buf)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.