我想逐个字符地读取文本,并将其放入以字节为单位的向量中。打印后,我在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]