gpt4 book ai didi

python - 如何在python中将多个二进制文件连接到一个文件中?

转载 作者:行者123 更新时间:2023-12-05 07:41:16 25 4
gpt4 key购买 nike

我需要在一个二进制文件中添加多个二进制文件。我所有的二进制文件都保存在一个文件夹中:

   file1.bin
file2.bin
...

为此,我尝试使用以下代码:

import numpy as np
import glob
import os
Power_Result_File_Path ="/home/Deep_Learning_Based_Attack/Test.bin"
Folder_path =r'/home/Deep_Learning_Based_Attack/Test_Folder/'
os.chdir(Folder_path)
npfiles= glob.glob("*.bin")
loadedFiles = [np.load(bf) for bf in binfiles]
PowerArray=np.concatenate(loadedFiles, axis=0)
np.save(Power_Result_File_Path, PowerArray)

它给我这个错误:

    "Failed to interpret file %s as a pickle" % repr(file))
OSError: Failed to interpret file 'file.bin' as a pickle

我的问题是如何连接二进制文件,而不是独立分析每个文件。

最佳答案

从字面上理解你的问题:粗暴的原始数据串联

files = ['my_file1', 'my_file2']
out_data = b''
for fn in files:
with open(fn, 'rb') as fp:
out_data += fp.read()
with open('the_concatenation_of_all', 'wb') as fp:
fp.write(out_data)

评论你的例子

您似乎将文件解释为保存的 numpy 数组(即通过 np.save() 保存)。然而,错误告诉我你没有通过 numpy 保存这些文件(因为它无法解码它们)。 Numpy 使用 pickle 来保存和加载,因此如果您尝试使用 np.load 打开一个随机的非 pickle 文件,调用将引发错误。

关于python - 如何在python中将多个二进制文件连接到一个文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45486465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com