A pure-Python memory-efficient packed representation for bit arrays
Project description
This class presents a pure-Python memory-efficient packed representation for bit arrays.
Version 3.4.3 is a quick release that fixes the problem with relative imports in the previous version. Python3 does not like relative imports.
Version 3.4.2 fixes the previous version’s problem of not exporting the module metadata.
The class is provided with the following operators/methods:
- __getitem__
- __setitem__
- __len__
- __iter__
- __contains__
- __getslice__
- __str__
- __int__
- __add__
- __eq__, __ne__, __lt__, __le__, __gt__, __ge__
- __or__
- __and__
- __xor__
- __invert__
- __lshift__
- __rshift__
- __add__
- close_file_object
- count_bits
- count_bits_sparse (faster for sparse bit vectors)
- deep_copy
- divide_into_two
- gcd (for greatest common divisor)
- gen_random_bits
- get_bitvector_in_ascii
- get_bitvector_in_hex
- gf_divide_by_modulus (for modular divisions in GF(2^n))
- gf_MI (for multiplicative inverse in GF(2^n))
- gf_multiply (for multiplications in GF(2))
- gf_multiply_modular (for multiplications in GF(2^n))
- hamming_distance
- int_val (for returning the integer value)
- is_power_of_2
- is_power_of_2_sparse (faster for sparse bit vectors)
- jaccard_distance
- jaccard_similarity
- length
- multiplicative_inverse
- next_set_bit
- pad_from_left
- pad_from_right
- permute
- rank_of_bit_set_at_index
- read_bits_from_file
- reset
- reverse
- runs
- set_value
- shift_left (for non-circular left shift)
- shift_right (for non-circular right shift)
- slice assignment
- test_for_primality
- unpermute
- write_to_file
- write_bits_to_fileobject
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
BitVector-3.4.3.tar.gz
(121.3 kB
view hashes)