Iterate randomly over integer ranges
Project description
Shuffled: Random iterators for large integer ranges
Shuffled is a library for iterating randomly and without repetition over integer ranges. It doesn't store all the integers in memory so that you can work with ranges of up to 2128 elements, even with your standard RAM available.
>>> shuffled_range = Shuffled(10) >>> list(shuffled_range) [4, 1, 2, 9, 8, 5, 3, 0, 6, 7] >>> same_shuffled_range = Shuffled(10, seed=shuffled_range.seed) >>> list(same_shuffled_range) [4, 1, 2, 9, 8, 5, 3, 0, 6, 7]
>>> network = ipaddress.IPv4Network('10.0.0.0/8') >>> shuffled_range = Shuffled(network.num_addresses) >>> for index in shuffled_range: ... print(network[index]) ... 10.24.41.126 10.67.199.15 10.240.82.199 10.79.219.74 10.166.105.25 10.19.5.91 [...]
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
shuffled-1.0.1.tar.gz
(4.4 kB
view hashes)