在 python 中将字节操作为二进制级别
manipulate bytes down to binary levels in python
我正在尝试开始学习编写加密算法,因此在使用 python 时,我正在尝试将数据操作到二进制级别,这样我就可以在数据末尾添加位以及操作模糊数据。
我不是编程新手我实际上是一名程序员,但我对 python 比较陌生,这就是为什么我有点挣扎。
任何人都可以告诉我在 python 中操作字符串到二进制级别的最佳方法(或推荐我应该以何种方式处理此问题)。我看了很多问题:
Convert string to binary in python
Manipulating binary data in Python
Convert binary to ASCII and vice versa
但所有这些都不是我要找的,我对 python 的了解还不够多,无法挑选出我需要的东西。有人可以帮助我提供详细信息吗(如果您使用函数,请解释它对我来说是什么,例如 ord())
bitarray 允许您将位序列视为正常的 Python 序列,并将它们作为二进制值进行操作。
>>> bitarray.bitarray('0101') | bitarray.bitarray('1010')
bitarray('1111')
看看 bitstring 模块,它旨在使二进制操作尽可能简单。
from bitstring import BitArray
a = BitArray('0xfeed') # 16 bits from hex
a += '0b001' # Add three binary bits
a.replace('0b111', '0b0') # Search and replace
a.count(1) # Count one bits
它有完整的 manual 和大量示例。
我正在尝试开始学习编写加密算法,因此在使用 python 时,我正在尝试将数据操作到二进制级别,这样我就可以在数据末尾添加位以及操作模糊数据。
我不是编程新手我实际上是一名程序员,但我对 python 比较陌生,这就是为什么我有点挣扎。
任何人都可以告诉我在 python 中操作字符串到二进制级别的最佳方法(或推荐我应该以何种方式处理此问题)。我看了很多问题:
Convert string to binary in python
Manipulating binary data in Python
Convert binary to ASCII and vice versa
但所有这些都不是我要找的,我对 python 的了解还不够多,无法挑选出我需要的东西。有人可以帮助我提供详细信息吗(如果您使用函数,请解释它对我来说是什么,例如 ord())
bitarray 允许您将位序列视为正常的 Python 序列,并将它们作为二进制值进行操作。
>>> bitarray.bitarray('0101') | bitarray.bitarray('1010')
bitarray('1111')
看看 bitstring 模块,它旨在使二进制操作尽可能简单。
from bitstring import BitArray
a = BitArray('0xfeed') # 16 bits from hex
a += '0b001' # Add three binary bits
a.replace('0b111', '0b0') # Search and replace
a.count(1) # Count one bits
它有完整的 manual 和大量示例。