码迷,mamicode.com
首页 > 编程语言 > 详细

python struct.pack方法报错argument for 's' must be a bytes object 解决

时间:2019-06-26 01:08:57      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:pre   stat   net   href   pytho   tps   bytes   size   https   

参考 https://blog.csdn.net/weixin_38383877/article/details/81100192

在python3下使用struct模块代码

fileHead = struct.pack(‘128sl‘, os.path.basename(filePath),os.stat(filePath).st_size);

抛出异常:

argument for ‘s‘ must be a bytes object必须要是字节类型。

解决办法: 
把字符串的地方转为字节类型,还要要先转成utf-8的编码(否则报错string argument without an encoding),代码如下:

fileHead = struct.pack(‘128sl‘, bytes(os.path.basename(filePath).encode(‘utf-8‘)),os.stat(filePath).st_size);

python struct.pack方法报错argument for 's' must be a bytes object 解决

标签:pre   stat   net   href   pytho   tps   bytes   size   https   

原文地址:https://www.cnblogs.com/lqerio/p/11087434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!