小编Edu*_*tos的帖子

将python字节“数组”转换为int“数组”

这是我在 python 中的第一个代码,我有这个问题:

我正在阅读一个二进制文件:

def read_file(file):
    with open(file, "rb") as f:
        frame = f.read()
        print(type(frame)) #out = <class 'bytes'>
        return frame
Run Code Online (Sandbox Code Playgroud)

我需要将所有向量转换为 int 值,而不是将它们用作字节。

打印后我得到这样的东西:

print(frame[0:10])
b'\xff\xff\xff\xffXabccc'
Run Code Online (Sandbox Code Playgroud)

但是,如果我只打印通过一个位置,我会得到这个:(整数值是正确的,但我只是使用函数打印来获取它们)

print(frame[0])
255    
print(frame[1])
255
print(frame[2])
255
print(frame[3])
255
print(frame[4])
88
print(frame[5])
97
print(frame[6])
98
print(frame[7])
99
print(frame[8])
99
print(frame[9])
99
print(frame[10])
98
Run Code Online (Sandbox Code Playgroud)

问题是:如何一步转换数组的所有位置?我想运行代码

print(frame[0:10])
Run Code Online (Sandbox Code Playgroud)

并得到类似的东西

[255, 255, 255, 255, 88, 97, 98, 99 ,99, 99, 98]
Run Code Online (Sandbox Code Playgroud)

python

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

python ×1