¿Cómo puedo declarar una matriz de bits de un tamaño muy grande, digamos 6 millones de bits?¿Cómo crear una matriz de bits en Python?
Respuesta
from bitarray import bitarray
a = bitarray(2**20)
Puede ver más información sobre este módulo en http://pypi.python.org/pypi/bitarray/
El módulo bitstring puede ayudar:
from bitstring import BitArray
a = BitArray(6000000)
Esto tomará menos de un megabyte de memoria, y es fácil de configurar , leer, cortar e interpretar bits. A diferencia del módulo bitarray, es puro Python, además funciona para Python 3.
Consulte the documentation para obtener más información.
Consigue el módulo BitArray usando
pip install bitarray
A continuación, este código se creará una matriz de bits de tamaño de 6 millones de dólares,
from bitarray import bitarray
bit_array = bitarray(6000000)
Puede inicializar todos los bits a cero usando
bit_array.setall(0)
Para configurar un bit en particular, digamos el número de bit 25, a 1, haga esto:
bit_array[25]=1
Actualicé 'pip' de antemano vea [link] (https://packaging.python.org/installing/) Luego ejecute' python -m pip install bitarray' en Windows. – yW0K5o
Este trazador convierte bytes a una lista de valores de bit True/False. Puede que no sea de rendimiento para bits de 6M, pero para banderas pequeñas debería estar bien y no necesita dependencias adicionales.
>>> flags = bytes.fromhex(b"beef")
>>> bits = [flags[i//8] & 1 << i%8 != 0 for i in range(len(flags) * 8)]
>>> print(bits)
[False, True, True, True, True, True, False, True, True, True, True, True, False, True, True, True]
- 1. ¿Cómo puedo crear una matriz/lista de diccionarios en python?
- 2. ¿Cómo crear una matriz de enteros en Python?
- 3. Crear una matriz 3D usando Python
- 4. Cómo crear una matriz dinámica
- 5. forma más elegante para crear una matriz 2D en Python
- 6. Jinja2: ¿Cómo crear una matriz javascript multidimensional?
- 7. ¿Cómo creo una matriz de bits en Javascript?
- 8. ¿Cómo implemento una matriz de bits en C/Objetivo C
- 9. ¿Cómo manipulo bits en Python?
- 10. Python: Crear una matriz asociativa en un bucle
- 11. ¿Es posible crear una matriz de mapa de bits en Android
- 12. Cómo crear una matriz JSON en Java
- 13. ¿Cómo crear una matriz en JSF EL?
- 14. Crear exe de 32 bits del código python en la máquina de 64 bits
- 15. ¿Cómo incrementar los bits correctamente en una matriz?
- 16. Crear una matriz multidimensional en vb.net
- 17. Cómo crear una matriz dinámica de enteros
- 18. ¿Cómo crear una matriz de registro numpy?
- 19. cómo crear una "matriz de selectores"
- 20. Puede Python de 64 bits crear ejecutables de Windows de 32 bits
- 21. Voltear bits en python
- 22. Cómo particionar los bits en una matriz de bits con un tiempo inferior al lineal
- 23. Cómo Crear una matriz de DbParameter []
- 24. ¿Puedo crear una máscara de bits de 1 a 64 bits sin condicional en Java?
- 25. ¿Cómo crear una lista de tamaño de arreglo en python?
- 26. ¿Cómo convertir una matriz asociativa en python?
- 27. Conversión de int a una matriz de bits en .NET
- 28. importar una matriz en python
- 29. Cómo cambiar una matriz de bytes por 12 bits
- 30. Crear una matriz de objetos en jQuery
¿Qué estás tratando de lograr? – ThiefMaster
Esto podría usarse para algo así como un mapa de bits. – SJP
Vea también http://stackoverflow.com/questions/2147848/how-do-i-represent-and-work-with-n-bit-vectors-in-python - indeciso para marcar como duplicado. – tripleee