鱼C论坛

 找回密码
 立即注册
查看: 1111|回复: 11

[已解决]文件插入二进制问题

[复制链接]
发表于 2021-4-2 20:55:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
F=open('data.bin','wb')
import struct
bytes=struct.pack('>i4sh',7,'sapm',8)

这个老是报错啊?什么问题啊 ?
最佳答案
2021-4-3 09:17:30
>i4sh这里需要打包的是3个参数
第一个>是内存对齐方式,暂时可以pass
第二个是i4   长度为4的int类型
第三个是4s   长度为4的字符串
第四个是h   长度为1的短整
其中,字符串要用b强转
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-4-2 21:37:06 From FishC Mobile | 显示全部楼层
> 用不用加个转义啥的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-2 23:18:19 | 显示全部楼层
Hela 发表于 2021-4-2 21:37
> 用不用加个转义啥的

我也不知道啊,我就是看视频,然后原样敲进去的,就报错了,不知道为啥
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-2 23:54:45 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-3 08:24:54 | 显示全部楼层
Daniel_Zhang 发表于 2021-4-2 23:54
https://zhuanlan.zhihu.com/p/145201882?from_voters_page=true

啥意思啊 ?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-3 09:17:30 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
>i4sh这里需要打包的是3个参数
第一个>是内存对齐方式,暂时可以pass
第二个是i4   长度为4的int类型
第三个是4s   长度为4的字符串
第四个是h   长度为1的短整
其中,字符串要用b强转
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-3 09:18:07 From FishC Mobile | 显示全部楼层
江湖散人 发表于 2021-4-3 08:24
啥意思啊 ?

bytes=struct.pack('>i4sh',7,b'sapm',8)
试一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-3 10:20:33 | 显示全部楼层
wp231957 发表于 2021-4-3 09:17
>i4sh这里需要打包的是3个参数
第一个>是内存对齐方式,暂时可以pass
第二个是i4   长度为4的int类型

按照你说的我操作了,结果也能运行,但是多了个b,
(7, b'spam', 8)
怎样才能把这个b去掉呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-3 10:21:57 From FishC Mobile | 显示全部楼层
江湖散人 发表于 2021-4-3 10:20
按照你说的我操作了,结果也能运行,但是多了个b,
(7, b'spam', 8)
怎样才能把这个b去掉呢?

这个b不是多余的,而是告诉你后面跟的是bytes型数据
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-4-3 10:24:24 | 显示全部楼层
wp231957 发表于 2021-4-3 10:21
这个b不是多余的,而是告诉你后面跟的是bytes型数据

嗯,我想要的输出的结果是正常的,我不想有这个b,怎么办啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-3 10:35:10 From FishC Mobile | 显示全部楼层
江湖散人 发表于 2021-4-3 10:24
嗯,我想要的输出的结果是正常的,我不想有这个b,怎么办啊?

我没在电脑前
你可以用str强转,或者用decode进行解码都可以
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-4-3 15:23:55 | 显示全部楼层

看不懂就算了喽

要是自己不愿意去研究,等着别人手把手教,真学不到什么东西的

给你的链接,人家也有你这个问题,不然我放上来干啥?为的就是让你研究研究人家是如何解决的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-17 17:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表