在python中将一个以字节为单位的文本逐字符添加到向量中



我想逐个字符地读取文本,并将其放入以字节为单位的向量中。打印后,我在ASCII代码中看到了这些字符的值。我该怎么解决这个问题。

这是我的代码:

text = b'ala ma kota a marysia ma rysia00'
t = []
def padding(txt):
if len(txt) % 16 != 0:
txt += b'0' * (16 - len(txt) % 16)
print(txt)
for i in range(len(txt)):
t.append(txt[i])
padding(text)
print(t)

我的输出如下所示:[65, 108, 97, 32, 109, 97, 32, 107, 111, 116, 97, 32, 97, 32, 77, 97, 114, 121, 115, 105, 97, 32, 109, 97, 32, 114, 121, 115, 105, 97, 48, 48]应该是这样的:[b'a', b'l', b'a', b' ', b'm', b'a', b' ', ..............]

可以简单地使用list((方法。

text = 'ala ma kota a marysia ma rysia00'
t = list(text)
print(t)

您可以使用chr()将数字转换为str,然后使用.encode()获得bytes:

t = [chr(c).encode() for c in text]

最新更新