Ring buffer implementation for numpy
Project description
Ring (aka circular) buffers backed by a numpy array, supporting:
Operations from collections.deque
b.append(val)
b.appendleft(val)
b.extend(val)
b.extendleft(val)
b.pop(val)
b.popleft(val)
The collections.Sequence protocol (unoptimized)
C-side unwrapping into an array with np.array(b)
Arbitrary element dtypes, including extra dimensions like RingBuffer(N, dtype=(int, 3))
For example:
import numpy as np
from numpy_ringbuffer import RingBuffer
r = RingBuffer(capacity=4, dtype=np.bool)
r.append(True)
r.appendleft(False)
print(np.array(r)) # array([False, True])
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
numpy_ringbuffer-0.2.1.tar.gz
(3.3 kB
view hashes)
Built Distribution
Close
Hashes for numpy_ringbuffer-0.2.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf92824565258b9d59a6fd39a7b50af08f0733f0b15c819e82eafdf28989b1d6 |
|
MD5 | 16ccfc13e521fcac78ab4552ec75d9f5 |
|
BLAKE2b-256 | efa03f601e7a6c0a8732feca053cf0a756579e7cd2ae362f8497285d6dc1914c |