Python:将C字符转换为整数

2 投票
1 回答
1214 浏览
提问于 2025-04-15 23:14

我从一个二进制文件中读取了一个字符串,然后用 struct.unpack 解压成长度为 n 的字符串。

这个字符串中的每一个字节都是一个单独的整数(1 字节),它的值在 0 到 255 之间。所以我想把字符串中的每个字符都转换成一个整数。

但是我不知道该怎么做。用 ord 函数似乎不太对劲……

1 个回答

4
>>> import struct
>>> a = struct.pack("ccc", "a", "b", "c")
>>> a
b'abc'
>>> b = struct.unpack("ccc", a)
>>> b
(b'a', b'b', b'c')
>>> ord(b[0])
97
>>> c = struct.pack("BBB", 1, 2, 3)
>>> c
b'\x01\x02\x03'
>>> d = struct.unpack("BBB", c)
>>> d
(1, 2, 3)

对我来说没问题。

撰写回答