【Python 常用脚本及命令系列 5 -- python 生成二进制文件】

转自:https://blog.csdn.net/ShenZhen_zixian/article/details/127806562

数组中数据转换文件为二进制

以下是一个简单的Python脚本,它将数组中的内容读取并将其保存到 test.bin 文件中。

output_path = 'test.bin'  # 输出文件的路径和文件名称,这里直接放在工程根目录下,所以没有写绝对路径

# 待写入的数据
li = [0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20, 0x21, 0x22]

print(bytes(li))

with open(output_path, 'ab') as f:
    f.write(bytes(li))
    f.close()

可以借助 hexdump 命令产看生成的二进制文件:

[02:24:53] (*^~^*) ~/workbase/python$ hexdump -C test.bin
00000000  10 11 12 13 14 15 16 17  18 19 1a 1b 1c 1d 1e 1f  |................|
00000010  20 21 22                                          | !"|
00000013

二进制文件行尾增加内容

test_path = 'test.bin'  # 输入文件的路径和文件名称,这里是在工程根目录下,所以没有写绝对路径

# 待插入的数据
li = [0xaa, 0xbb, 0xcc, 0xdd, 0xee]

# 打开并查看原文件
with open(test_path, 'rb') as f:
    print(bytes(f.read()))  #查看文件内容

# 插入数据
with open(test_path, 'ab+') as f:   # ab+: 在文本末尾追加内容
    f.write(bytes(li))
    f.close()

# 打开并查看插入数据后的文件
with open(test_path, 'rb') as f:
    print(bytes(f.read()))  #查看文件内容

效果如下

[02:32:45] (*^~^*) ~/workbase/python$ hexdump -C test.bin
00000000  10 11 12 13 14 15 16 17  18 19 1a 1b 1c 1d 1e 1f  |................|
00000010  20 21 22 aa bb cc dd ee                           | !".....|
00000018
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

主公讲 ARM

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值