Randomly iterate a sequence with buffered shuffling
Project description
randiter
randiter randomly iterates a sequence with buffered shuffling.
randiter is suitable for shuffling very long sequences and sequences with an unknown length.
Usage
Shuffle a very long sequence:
from randiter import randiter
for index in randiter(range(1_000_000_000)):
print(index) # random number
Shuffle lines in a text file with an unknown length:
from randiter import randiter
with open("large.txt", "rt") as f:
for line in randiter(f):
print(line) # random line
Shuffle a sequence with a large buffer size (to perform perfect shuffling, specify a buffer size that is equal to or greater than the length of the given sequence):
from randiter import randiter
for index in randiter(range(1_000_000_000), buffer_size=1_000_000):
print(index) # random number
FAQ
- Q. Shuffled sequences are not completely shuffled.
- A. This is because
randiterperforms buffered shuffling. This problem can be mitigated by specifying a larger buffer size.
- A. This is because
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file randiter-0.1.0.tar.gz.
File metadata
- Download URL: randiter-0.1.0.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.9.7 Darwin/20.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1489ed1aa4db99cd83466c81b75e954537a8a2e056da7d1da393ac67a65f49b8
|
|
| MD5 |
73115622c5194f74a7954eb3632419b4
|
|
| BLAKE2b-256 |
b911572066f6db2acb4adf4b023ac28942b0543e589b5c7d73cdb37d3f44956b
|
File details
Details for the file randiter-0.1.0-py3-none-any.whl.
File metadata
- Download URL: randiter-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.8 CPython/3.9.7 Darwin/20.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08ec0fca4e8f69ca65a257ccab6e873c2417253beb05b0a36836033bf49d626b
|
|
| MD5 |
7a727922e8e32f480539aa95a87782c4
|
|
| BLAKE2b-256 |
8d38bafad4a16e9508f7cdfe6af67b4f204d9ef5615555f738a7233a6a32bc43
|